sql соединение не работает после переноса приложения Windows 6 с локального на сервер

У меня есть приложение для Windows 6, которое я разрабатываю (в VB). Я получаю данные из базы данных MSSQL 2005. Все работало нормально, запустив его локально (с эмулятором), но когда я переместил базу данных в тестовое окно, я получил следующую ошибку:

System.Data.SqlClient.SqlException {"Указанный сервер SQL не найден: xx.xx.xx.xxx\sql2005"}

Моя строка подключения:

Data Source=XX.XX.XX.XXX\sql2005;Initial Catalog=databaseName;UID=databaseUser;PWD=password

Единственное отличие в строке подключения от того, когда я запускал ее локально, заключается в том, что я использовал имя своего компьютера (которое я также пытался использовать с именем компьютера sqlserver).

Спасибо

5 ответов

Решение

Попробуйте изменить строку подключения на:

Data Source=XX.XX.XX.XXX;Initial Catalog=databaseName;UID=databaseUser;PWD=password

Скорее всего, имя экземпляра (sql2005) неверно.

Убедитесь, что запущен sql браузер

убедитесь, что удаленные подключения и TCP/IP включены в окне SQL

Идея Гордона была близка. Имя экземпляра (sql2005) было правильным, так как я мог получить ту же строку подключения из моего веб-приложения, но по какой-то причине не работал с мобильным приложением. Когда я переместил базу данных из этого экземпляра на этот ящик (то есть, xx.xx.xx.xxx без /sql2005), он работал.

Приложение работает на том же сервере, что и БД? Вы пробовали использовать "localhost"?

Обязательно убедитесь, что в SQL Box включены удаленные подключения, как предложил SqlMenace.

Если SQL Server настроен для разрешения удаленных подключений и TCP/IP включен, попробуйте запустить приложение на сервере базы данных, чтобы проверить, работает ли оно правильно. Если это не сработает, это будет означать, что в строке подключения что-то не так.

Если приложение работает локально на сервере базы данных, и удаленные подключения \ TCP/IP включены, попробуйте эту статью, касающуюся брандмауэра Windows и SQL Server.

Другие вопросы по тегам