Ошибка при попытке подключения к SQL Server с использованием C # - PullRequest
0 голосов
/ 27 января 2011

Мой код выглядит следующим образом:

string constring = "Data Source=132.186.127.169"+ "Initial Catalog=CadPool1;" + "Integrated Security=True";
SqlConnection con;
con = new SqlConnection(constring);
con.Open();
string query="SELECT * from CadPoolProjectTable1";
SqlCommand cmd = new SqlCommand(query, con);
cmd.ExecuteNonQuery();
MessageBox.Show("selected");
con.Close(); 

Я получаю сообщение об ошибке на линии con.Open();. Ошибка:

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

Ответы [ 6 ]

4 голосов
/ 27 января 2011

Вам не хватает ';' после имени сервера в строке подключения.

string constring = "Data Source=132.186.127.169"+ "Initial Catalog=CadPool1;" + "Integrated Security=True";

должно быть

string constring = "Data Source=132.186.127.169;"+ "Initial Catalog=CadPool1;" + "Integrated Security=True";

Ошибка говорит о том, что вашему приложению не удалось подключиться к серверу. Я бы сделал следующее.

  1. Проверьте адрес сервера (на первый взгляд выглядит хорошо)
  2. Подключитесь с помощью студии управления, и в вашем случае это должно было работать.

Это означает, что проблема связана с кодом. Поскольку вы объединяете строку, я отлаживаю код и вижу конечный результат для строки подключения.

Подсказка. Если это веб-приложение, добавьте строку подключения в файл web.config. Подробнее здесь Как: читать строки подключения из файла Web.config

3 голосов
/ 27 января 2011

В строке подключения отсутствует точка с запятой

Data Source=132.186.127.169;"+ "Initial...
                           ^

Если вам нужно создать строку подключения самостоятельно, вы можете использовать класс SqlConnectionStringBuilder . Таким образом, вы не будете так обеспокоены этими тонкими ошибками.

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

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

string constring = 
    "Data Source=132.186.127.169;Initial Catalog=CadPool1;Integrated Security=True";

Вам не нужно объединять строки вместе, но, что более важно, вы пропустили точку с запятой ";" между источником данных и исходными настройками каталога.

0 голосов
/ 27 января 2011

Servername в строке подключения неверно.а также, поскольку нет динамических значений, вам не нужно объединять строки.Измените его на:

string constring = "Data Source=132.186.127.169;
                    Initial Catalog=CadPool1;
                    Integrated Security=True";
0 голосов
/ 27 января 2011

Пожалуйста, проверьте, если вы можете ping сервер, упомянутый через cmd Также попробуйте telnet на сервер с вашего компьютера. Еще одна вещь, которую нужно проверить, это порт, для которого настроен сервер, если он не является портом по умолчанию, вам нужно будет добавить порт как 132.186.127.169,XXX

0 голосов
/ 27 января 2011

Во-первых, вам не хватает ; (точка с запятой) между источником данных и исходным каталогом.

Во-вторых, если это недавно установленный экземпляр SQL Server, вам может понадобиться зайти в диспетчер конфигурации SQL Server и включить необходимые протоколы.

...