Назад | Перейти на главную страницу

Ошибка создания ODBC-подключения к SQL Server 2008 Express

При создании системного DSN я получаю сообщение об ошибке:

Connection failed:  
SQLState: '08001'  
SQL Server Error: 2  
[Microsoft][SQL Server Native Client 10.0]Named Pipes Provider: Could  
not open a connection to SQL Server [2].  
Connection failed:  
SQLState: 'HYT00'  
SQL Server Error: 0  
[Microsoft][SQL Server Native Client 10.0]Login timeout expired

Я использую Vista Home Premium 64-bit SP2 и без ошибок установил SQL Server 2008 Express Advanced. Я буду использовать базу данных локально для приложения, установленного на том же компьютере.

Я могу успешно подключиться к SQL Server Management Studio с помощью проверки подлинности Windows (моя учетная запись Windows является членом локальных администраторов), и я могу успешно создать базу данных с владельцем по умолчанию (по умолчанию моя учетная запись Windows). Я также могу подключиться с помощью SSMS с аутентификацией SQL и учетной записью SA.

Диспетчер конфигурации SQL Server показывает, что Shared Memory, TCP/IP, и Named Pipes включены для SQL Native Client 10.0 Configuration, SQL Native Client 10.0 Configuration (32bit), и SQL Server Network Configuration (SQLEXPRESS).

В SQL Server (SQLEXPRESS) и SQL Server Reporting Services (SQLEXPRESS) службы работают.

Когда я создаю системный DSN, мои драйверы SQL server (sqlsrv32.dll 4-10-09), что дает общий мастер, и SQL Server Native Client 10.0 (sqlncli10.dll 7-10-08), что дает мастер SQL Server 2008. Я выбираю последнее.

Я ввожу имя, описание и пробовал оба MyPCName и 127.0.0.1 для имени сервера (просмотр ничего не дает). После нажатия кнопки «Далее» я оставляю его для встроенной проверки подлинности Windows и оставляю флажок «Подключиться к серверу для дополнительных параметров». После нажатия кнопки «Далее» я получаю сообщение об ошибке выше. Я получаю ту же ошибку, используя аутентификацию SQL и учетную запись SA.

Я знаю, что это, вероятно, простой ответ (проблема с разрешением?), И я новичок в SQL, поэтому я ценю все, что укажет мне в правильном направлении.
Спасибо!

Это имя экземпляра (Servername\instance). Вероятно, в прошлом у вас был экземпляр по умолчанию (который обычно не имеет имени); теперь вам нужно, и это обязательно сделать явным, так как много экземпляров могут находиться на одном сервере.

Я понял. Вместо того MyPCName, Мне нужно было использовать MyPCName\SQLExpress. Раньше я всегда просто использовал имя компьютера и никогда не испытывал проблем. Может быть, 2008 год будет другим.