Возможность подключения к базе данных превратилась в стандартный аспект разработки приложений. Строки подключения к базе данных теперь являются стандартом, необходимым для каждого проекта. Я часто копирую строку подключения из другого приложения или выполняю поиск, чтобы найти нужный мне синтаксис. Это особенно актуально при взаимодействии с SQL Server, который имеет очень много вариантов строки подключения. Теперь давайте рассмотрим многие аспекты строк подключения.
строка подключения
Во время создания или создания экземпляра объекта строка подключения к базе данных передается необходимому объекту через свойства или методы. Формат строки подключения представляет собой список пар параметров ключ/значение, разделенных точкой с запятой. Листинг A включает пример на C#, который иллюстрирует, как подключиться к SQL Server путем создания объекта SqlConnection (фактическая строка подключения назначается через свойство ConnectionString объекта). В листинг B включена версия VB.NET.
Список А
string cString = "Источник данных=сервер;Исходный каталог=db;Идентификатор пользователя=тест;Пароль=тест;";
SqlConnectionconn = новый SqlConnection();
conn.ConnectionString = cString;
конн.Открыть();
Список Б
Уменьшить cString как строку
cString = "Источник данных=сервер;Исходный каталог=db;Идентификатор пользователя=тест;Пароль=тест;"
Dim conn As SqlConnection = New SqlConnection()
conn.ConnectionString = cString
конн.Открыть()
В строке подключения указываются сервер базы данных и сама база данных, а также имя пользователя и пароль, необходимые для доступа к базе данных. Хотя этот формат подходит не для всех взаимодействий с базами данных, у него есть множество доступных опций, многие из которых имеют синонимы.
Наряду с элементами «Источник данных», «Исходный каталог», «Идентификатор пользователя» и «Пароль» доступны следующие параметры:
Имя приложения: Имя приложения. Если не указано, его значением является поставщик данных .NET SqlClient.
AttachDBFilename/расширенные свойства/Исходное имя файла: имя основного файла, который можно подключить к базе данных, включая полный путь. Имя базы данных должно быть указано с ключевым словом Database.
Тайм-аут соединения/Тайм-аут соединения: продолжительность времени (в секундах), в течение которого соединение с сервером ожидает завершения. Значение по умолчанию — 15.
Время жизни соединения: когда соединение возвращается в пул соединений, время его создания сравнивается с текущим временем. Если этот промежуток времени превышает срок действия соединения, соединение аннулируется. Его значение по умолчанию — 0.
Сброс соединения: указывает, сбрасывается ли соединение при его удалении из пула соединений. Значение false valid устраняет необходимость дополнительного обращения к серверу при получении соединения, а его значение по умолчанию равно true.
Текущий язык: имя языковой записи SQL Server.
Источник данных/сервер/адрес/адрес/сетевой адрес: имя или сетевой адрес экземпляра SQL Server.
Encrypt (шифрование). Если значение равно true, SQL Server будет использовать SSL-шифрование для всех данных, передаваемых между клиентом и сервером, если на сервере установлен авторизованный сертификат. Принятые значения — истина, ложь, да и нет.
Enlist (регистрация): указывает, будет ли программа пула соединений автоматически регистрировать соединение в контексте текущей транзакции потока создания. Значение по умолчанию — true.
База данных/исходный каталог: имя базы данных.
Встроенная безопасность/доверенное соединение: указывает, используется ли проверка подлинности Windows для подключения к базе данных. Ему может быть присвоено значение true, false или sspi-эквивалент true. Его значение по умолчанию — false.
Максимальный размер пула (максимальная емкость пула соединений): максимальное количество соединений, разрешенное пулом соединений. Значение по умолчанию — 100.
Минимальный размер пула (минимальная емкость пула соединений): минимальное количество соединений, разрешенное пулом соединений, значение по умолчанию — 0.
Сетевая библиотека/сеть: сетевая библиотека, используемая для установления соединения с экземпляром SQL Server. Поддерживаемые значения включают: dbnmpntw (именованные каналы), dbmsrpcn (мультипротокол/RPC), dbmsvinn (Banyan Vines), dbmsspxn (IPX/SPX) и dbmssocn (TCP/IP). Для соответствующего соединения должна быть установлена библиотека динамической компоновки протокола; по умолчанию используется TCP/IP;
Размер пакета: размер сетевых пакетов, используемых для связи с базой данных. Его значение по умолчанию — 8192.
Пароль/Пароль: пароль, соответствующий имени учетной записи.
Сохранение информации о безопасности: используется для определения доступности информации о безопасности после установления соединения. Если значение истинно, конфиденциальные данные, такие как имена пользователей и пароли, доступны, а если значение ложно, они недоступны. Сброс строки подключения приведет к перенастройке всех значений строки подключения, включая пароль. Его значение по умолчанию — false.
Пулирование: определяет, использовать ли пул соединений. Если true, соединение будет получено из соответствующего пула соединений или, при необходимости, соединение будет создано и добавлено в соответствующий пул соединений. Его значение по умолчанию — true.
Идентификатор пользователя: имя учетной записи, используемое для входа в базу данных.
Идентификатор рабочей станции: имя рабочей станции, подключенной к SQL Server. Его значением по умолчанию является имя локального компьютера.
Следующая строка подключения устанавливает соединение с базой данных Northwind на сервере TestDev1 с использованием доверенного соединения и указанных учетных данных для входа (менее безопасно, чем оставить пароль администратора пустым): Server=TestDev1;Database=Northwind;User ID=sa. ;
Пароль=;Trusted_Connection=True;
Следующая строка подключения использует TCIP/IP и определенный IP-адрес:
Источник данных=192.162.1.100,1433;Сетевая библиотека=DBMSSOCN;
Начальный каталог=Борей;Идентификатор пользователя=sa;Пароль=;
Используемые параметры можно легко включить в строку подключения, но они опять-таки зависят от вашего приложения и его требований. Хорошо знать, что доступно, чтобы вы могли использовать его соответствующим образом.
Использование ADO.NET 2.0
В ADO.NET 2.0 представлены новые генераторы строк подключения для каждого поставщика данных .NET Framework. Ключевые слова перечислены как атрибуты, что позволяет применить синтаксис строки подключения перед отправкой в источник данных. Также имеются новые классы, которые упрощают хранение и извлечение строк подключения в файлах конфигурации, а также их безопасное шифрование.