Как определить строку подключения к базе данных SQL Server 2008? - PullRequest
7 голосов
/ 01 июля 2010

Я использую MS Visual Studio 2010 для создания приложения с доступом к базе данных SQL Server 2008, но для создания базы данных я добавил новый «Проект базы данных SQL Server 2008», он добавил его и показывает все в обозревателе решений, но как мне написать строку подключения для подключения к нему, потому что я написал эту строку, и она не сработала.

SqlConnection cnTrupp = new SqlConnection("Initial Catalog = Database;Data Source = localhost;Persist Security Info=True;");

Обновление:

Я использовал это:

cnTrupp = new SqlConnection("database=DB_Trupp;server=.\\SQLExpress;Persist Security Info=True;integrated security=SSPI");

Но когда я использую cnTrupp.Open(), это говорит мне, что вход не удался.

Ответы [ 5 ]

11 голосов
/ 01 июля 2010

Посетите веб-сайт Строки подключения , на котором есть множество примеров для ваших строк подключения.

В основном вам необходимы три вещи:

  • имясервер, к которому вы хотите подключиться (используйте «.» или (local) или localhost для локальной машины)
  • имя базы данных, к которой вы хотите подключиться
  • каким-либо образомопределения безопасности - либо встроенная защита Windows, либо определение комбинированного имени пользователя / пароля

Например, если вы хотите подключиться к локальному компьютеру и базе данных AdventureWorks с помощью встроенной защиты, используйте:

server=(local);database=AdventureWorks;integrated security=SSPI;

Или, если на вашем компьютере установлен SQL Server Express в установке по умолчанию и вы хотите подключиться к базе данных AdventureWorksLT2008, используйте это:

server=.\SQLExpress;database=AdventureWorksLT2008;integrated Security=SSPI;
3 голосов
/ 01 июля 2010

Стандартная безопасность
Источник данных = имя_сервера \ имя_экземпляра; Начальный каталог = myDataBase; Идентификатор пользователя = имя_пользователя; Пароль = myPassword;

Надежное соединение
Источник данных = имя_сервера \ имя_экземпляра; Начальный каталог = myDataBase; Интегрированная безопасность = SSPI;

Вот хороший справочник по строкам подключения, который я всегда держу под рукой: ConnectionStrings.com

0 голосов
/ 01 июля 2010

Вместо того, чтобы писать его в своем коде напрямую, я предлагаю вам использовать выделенный элемент <connectionStrings> в файле .config и извлекать его оттуда.

Также используйтеоператор using, так что после использования ваше соединение автоматически закрывается и удаляется.

Отличная ссылка для поиска строк соединения: connectionstrings.com / sql-server-2008 .

0 голосов
/ 01 июля 2010

Скопируйте / Вставьте то, что ниже, в ваш код:

SqlConnection cnTrupp = new SqlConnection("Initial Catalog = Database;Data Source = localhost;Persist Security Info=True;Integrated Security = True;");

Имейте в виду, что это решение использует вашу учетную запись Windows для входа в систему.

Как сказали Джон и Адам, это связано с тем, как вы входите (или не входите). Посмотрите на ссылку, предоставленную Джоном, чтобы получить лучшее объяснение.

0 голосов
/ 01 июля 2010

Вам необходимо указать, как вы будете аутентифицироваться в базе данных. Если вы хотите использовать встроенную защиту (это означает использование проверки подлинности Windows с использованием локальной или доменной учетной записи Windows), добавьте это в строку подключения:

Integrated Security = True;

Если вы хотите использовать аутентификацию SQL Server (т.е. вы указываете логин и пароль, а не учетную запись Windows), добавьте следующее:

User ID = "username"; Password = "password";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...