У меня есть следующее исключение при попытке установить соединение с сервером с прошлой недели.
[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.
строка подключения:
Provider=SQLOLEDB;Data Source=ComputerName\SQLEXPRESS;Initial Catalog=DatabaseName;Integrated Security=SSPI
protocol for SQLEXPRESS
и "Client Protocols"
.Единственные различия, которые я могу найти между журналом ошибок «до» и «после»:
Dedicated administrator connection support was not started because it is disabled on this edition of SQL Server. If you want to use a dedicated administrator connection, restart SQL Server using the trace flag 7806. This is an informational message only. No user action is required.
2013-04-15 19:13:27.98 Serveur The SQL Server Network Interface library could not register the Service Principal Name (SPN) for the SQL Server service. Error: 0x490, state: 16. Failure to register an SPN may cause integrated authentication to fall back to NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies.
2013-04-15 19:13:28.53 spid10s Erreur : 1802, Gravité : 16, État : 4.`
Спасибо за ваше время.
Итак, user2210761 приводит меня к временному решению.
Я понял, что проводник сервера использует такую строку подключения. Источник данных = ComputerName \ SQLEXPRESS; Начальный каталог = DatabaseName; Integrated Security = True
Тем не менее эта строка подключения несовместима с классом подключения Ole DB. (я использовал OleDbConnection и все связанное с ним дерево объектов), потому что ему нужно значение поставщика.
Поскольку мне абсолютно необходимо подключиться к моей БД, я переключился на класс SqlConnection и установил строку подключения проводника сервера, и она работает!
Я снова рассмотрю строку подключения, когда у меня будет настоящая БД.
Спасибо user2210761 за вашу помощь!
Чем написано ваше приложение? Visual Studio?
Откуда у вас строка подключения? Не похоже на то, что генерирует Visual Studio.
Измените строку подключения на Data Source = ComputerName \ SQLEXPRESS; Initial Catalog = DatabaseName; Integrated Security = True
Редактировать :
Итак, вы используете Visual Studio. Перейдите на вкладку Server Explorer и добавьте соединение с вашим SQL-сервером, добавьте файл DBML в свой проект (здесь нет Visual Studio, но я думаю, он называется Linq to SQL classes), затем вытащите любую таблицу с вашего сервера в DBML и сохраните. Это заставит Visual Studio автоматически создать строку подключения. Затем перейдите в свойства проекта, вкладку настроек и проверьте, как выглядит строка подключения.