Почему я могу подключиться к sql server 2008 через odbc, а не через код vb.net? - PullRequest
2 голосов
/ 06 января 2011

Я поддерживаю старую программу vb.net, чья база данных, к которой она подключена, была перемещена из SQL Server 2005 в SQL Server 2008. Есть ли в SQL Server 2008 параметр, который разрешает соединениям ODBC доступ к базе данных, но не разрешает VB .NET подключиться к нему программно?

ошибка, которую я продолжаю получать в приложении:

Произошла ошибка во время установление связи с сервер. При подключении к SQL Server 2005, эта ошибка может быть вызвана тот факт, что по умолчанию настройки SQL Server не позволяют удаленные подключения. (поставщик: названный Поставщик труб, ошибка: 40 - не удалось открыть соединение с SQL Server)

однако я могу подключиться к нему, когда создаю системный dsn для экземпляра сервера sql и через VS2005 Tools >> Connect to Database.

Вот код, который я использую для подключения:

dim strC as string 
strC = "data source=bob; database=subscribers; user id=bobuser; password=passme" 
dim connection as New SqlClient.SqlConnection(strC)  
try     
   connection.open() 
catch ex as Exception     
   msgbox(ex.message) 
end try  
connection.Close()

Ответы [ 2 ]

2 голосов
/ 06 января 2011

Нет такой настройки, но это возможно, потому что: Вы можете получить доступ к своему серверу через ODBC, потому что использование ODBC DSN создает своего рода локальный мост к серверу.При попытке подключиться к серверу из кода VB.NET с помощью библиотеки SqlClient с клиентского компьютера ваш сервер Sql должен принимать удаленные подключения ...

Проверьте эту статью MSDN для получения справки.

Вкратце:

  • Вам необходимо настроить Sql Server для разрешения удаленных подключений
  • Необходимо убедиться, что ваш брандмауэр не блокирует порт (ы) Sql Server
  • Убедитесь, что TCP / IP включен как комм.механизм для Sql Server
1 голос
/ 19 августа 2014

Пуск> Выполнить> "CLICONFG" (без кавычек)

В служебной программе клиента SQL Server включите Именованные каналы по TCP / IP

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...