Подключение к SQL Server 2014 через консольное приложение не работает - PullRequest
2 голосов
/ 08 марта 2019

Я пытаюсь считывать значения из моей базы данных. Я уверен, что метод, который я использую, правильный. Также мой SQL Server 2014 разрешает удаленный доступ.

Тем не менее, когда я запускаю свое приложение, я получаю сообщение об ошибке.

System.Data.SqlClient.SqlException: ошибка, связанная с сетью или экземпляром, возникла при установлении соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен для разрешения удаленных подключений. (поставщик: сетевые интерфейсы SQL, ошибка: 25 - строка подключения недопустима)

Мой код:

private void DatabaseUpgradeCheckForMSSQL()
{ 
    SqlConnection sqlCon = new SqlConnection("Data Source=VBKSQL2014MSSQL\\MSSQLSERVER; Initial Catalog=dwworkflowengine; User ID=sa; Password=<Password>;");
    SqlDataAdapter sqlda = new SqlDataAdapter("Select * from Changesets", sqlCon);

    DataTable dtbl = new DataTable();
    sqlda.Fill(dtbl);

    foreach (DataRow row in dtbl.Rows)
    {
        Console.WriteLine(row["Number"]);
    }

    Console.ReadKey();
}

1 Ответ

2 голосов
/ 08 марта 2019

Если вы подключаетесь к по умолчанию, безымянному экземпляру SQL Server, который имеет внутренний "идентификатор" MSSQLSERVER, вы не должны использовать этот внутренний идентификаторв качестве имени экземпляра.

Так что вместо этого:

SqlConnection sqlCon = new SqlConnection("Data Source=VBKSQL2014MSSQL\\MSSQLSERVER; Initial Catalog=dwworkflowengine; User ID=sa; Password=<Password>;");

попробуйте это:

SqlConnection sqlCon = new SqlConnection("Data Source=VBKSQL2014MSSQL;Initial Catalog=dwworkflowengine;User ID=sa;Password=<Password>;");

И пожалуйста - в качестве лучшей практики- НЕ используйте учетную запись sa для своей работы !!Используйте встроенную защиту или отдельную учетную запись - sa если НИКОГДА не будет использоваться в вашей реальной работе!

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