Не удается подключиться к экземпляру SQL Server через мое приложение, но я могу с помощью SqlCmd
Я не могу подключить мое приложение VB к экземпляру SQL Server 2005, потому что "сервер не существует или доступ запрещен" (строка подключения правильна, потому что приложение работает в других сетях, а также я написал ip сервера вместо его имени). Однако я могу подключиться из той же сети с SqlCmd (протокол TCP).
Кто-нибудь знает возможные причины ошибки?
Благодарю.
Dim StringConexion As String = "Поставщик =SQLOLEDB; Источник данных = ip сервера \myInstance; Начальный каталог =mydb; Идентификатор пользователя =myUser; Пароль =myPassword"
Сообщение об ошибке генерируется.NET Framework (это был мой испанский перевод, так что вы не можете его распознать). Я постараюсь перевести это лучше:
Необработанное исключение в приложении. Если вы нажмете "Продолжить", приложение проигнорирует эту ошибку и попытается продолжить. Если вы нажмете на приложение закроется сразу.
[DBNETLIB] [ConnectionOpen (Connect ()).] SQL Server не существует s Сервер или доступ запрещен.
2 ответа
Вы можете попробовать следующее для устранения ошибки, которую вы получаете:
- Запустите ваше приложение в VB IDE, установив точку останова при подключении базы данных. Если это VB 6, вы хотите найти метод Open() экземпляра объекта ADO.Connection. затем вы можете просмотреть поведение приложений и посмотреть, что происходит.
- Вы можете посмотреть журнал ошибок на сервере. Это на жестком диске сервера в папке, похожей на
C:\Program Files\Microsoft SQL Server\MSSQL10.<instance_name>\MSSQL\Log\ERRORLOG
, Это будет полезно только в том случае, если приложение фактически устанавливает соединение с сервером SQL и существует какая-то ошибка аутентификации. - Вы можете запустить анализатор пакетов, например Wireshark, и искать попытки подключения при запуске приложения.
Я думаю, что эти связи могут помочь вам
Dim conn As String ="Источник данных = имя_сервера при входе на Ms sql сервер; база данных = ваша база данных; идентификатор пользователя = sa; пароль = ваш пароль"