Технология Microsoft ADO.NET

Управление соединением. Объект Connection


Большинство источников данных поддерживает ограниченное количество соединений. Так, база данных Microsoft Access может поддерживать одновременную работу не более чем с 255 пользователями. При попытке обращения к базе данных, лимит соединений которой исчерпан, пользователь не получит нужной ему информации и будет вынужден ждать освобождения соединения. Задача разработчика заключается в минимизации времени связи с базой данных, поскольку соединение занимает полезные системные ресурсы.

Когда вы вызываете у объекта DataAdapter метод (например, Fill), то он сам проверяет, открыто ли соединение. Если соединения нет, то DataAdapter открывает соединение, выполняет задачи и затем закрывает соединение.

Явное управление соединением - лучший подход к работе с базами данных. Он обладает рядом преимуществ:

  • дает более чистый и удобный для чтения код;
  • помогает при отладке приложения;
  • является более эффективным.

Для явного управления соединением используется объект Connection. Создайте новый проект и назовите его ConnectionMDB. Перетащите элемент управления DataGrid из панели инструментов Toolbox и установите свойству Dock значение Fill. Перейдите в код формы. Подключаем пространство имен:

using System.Data.OleDb;

В конструкторе Form1 после InitializeComponent создаем объект Connection:

OleDbConnection conn = new OleDbConnection(ConnectionString);

В качестве параметра объекту conn передается строка подключения ConnectionString.

Можно также устанавливать строку подключения через свойство созданного объекта сonn:

OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = ConnectionString;

Теперь нам необходимо определить параметры самой строки ConnectionString. Вы можете сделать это вручную или скопировав код из приложения ConnStringMDB (подключаться будем к базе данных xtreme).

string ConnectionString = @"Provider=""Microsoft.Jet.OLEDB.4.0""; Data Source=""E:\Program Files\Microsoft Visual Studio .NET 2003\Crystal Reports\Samples\Database\xtreme.mdb"";User ID=Admin;Jet OLEDB:Encrypt Database=False";

Теперь можно устанавливать соединение, вызывая метод Open объекта Connection:

OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = ConnectionString; conn.Open();



Содержание раздела