Лабораторна робота 8. Робота з базою даних
Компоненти для зв'язку з БД
Постачальник дані про програму (Провайдер) - об'єкт, призначений для забезпечення взаємодії додатка з сховищем інформації (базами даних).
Природно, з додатком немає ніякого діла до того, де зберігається і як витягується споживана додатком інформація. Для додатка джерелом даних є той, хто передає дані з додатком. І як сам цей джерело цю інформацію видобуває - нікого не стосується.
Джерело даних (Data Provider) - це набір взаємопов'язаних компонентів, що забезпечують доступ до даних. Функціональність і саме існування провайдера забезпечується набором класів, спеціально для цієї мети розроблених.
ADO.NET підтримує два типи джерел даних, відповідно, два безлічі класів:
§ SQL Managed Provider (SQL Server.NET Data Provider) - для роботи з Microsoft SQL Server 7.0 і вище. Працює зі спеціального протоколу, званого TabularData Stream (TDS) і не використовує ні ADO, ні ODBC, ні будь-яку ще технологію. Орієнтований спеціально на MS SQL Server, протокол дозволяє збільшити швидкість передачі даних і тим самим підвищити загальну продуктивність програми.
§ ADO Managed Provider (OleDb.NET Data Provider) - для всіх інших баз даних. Забезпечує роботу з довільними базами даних. Однак за рахунок універсальності є програш в порівнянні з SQL Server Provider, так що при роботі з SQL Server рекомендовано використовувати спеціалізовані класи.
У наступних розділах наводиться опис складових елементів провайдера.
Об'єкт-представник класу Connection представляє з'єднання з джерелом (базою) даних і забезпечує підключення до бази даних. Visual Studio.NET підтримує два класи:
§ SQLConnection (забезпечує підключення до SQL Server 7.0 і вище),
§ OleDbConnection (забезпечує підключення до інших варіантів БД).
Компонента Connection (незалежно від того, представником якого класу вона є) має властивість ConnectionString, в якому фіксується вся необхідна для підтримання зв'язку з БД інформація. Крім того, підтримується ряд методів, що дозволяють обробляти дані з застосуванням транзакцій.
Властивості об'єкта Connection дозволяють:
§ задавати реквізити користувача,
§ вказувати розташування джерела даних.
Методи об'єкта дозволяють управляти з'єднанням з джерелом даних.
В процесі з'єднання за допомогою об'єкта-представника класу OleDbConnection (аналогічно SQLConnection) створюється і ініціалізується відповідний об'єкт з використанням одного з варіантів конструктора і рядки з'єднання.
Формування рядки і послідовність дій при ініціалізації об'єкта з'єднання - справа техніки. Головне - це щоб властивість ConnectionString в результаті отримало б посилання на рядок символів, що містить необхідну для встановлення з'єднання інформацію.
Властивості, методи та події класу OleDbConnection