Отворете интерфейса за достъп до база данни

Функционален модел ODBC

Фондация ODBC

ODBC (Open Database Connectivity) е разработен от Microsoft като отворен интерфейс за достъп до бази данни. Той осигурява унифицирано средство за взаимодействие между приложение, наречено клиент (или клиентско приложение), със сървър - база данни.

Интерфейсът ODBC се основава на спецификацията CLI (Call-Level Interface), разработена от X/Open и ISO/IEC за API на базата данни, както и на езика SQL (Structured Query Language) като стандарт за езика за достъп до базата данни.

ODBC е проектиран да поддържа максимална оперативна съвместимост на приложението, което позволява на всяко приложение, използващо ODBC, да има единен достъп до различни източници на данни. Така че, ако приложение, което отговаря на стандарта ODBC и SQL, първоначално е разработено за работа с база данни на Microsoft Access и след това таблиците на тази база данни са прехвърлени в база данни на Microsoft SQL Server или база данни на Oracle, тогава приложението ще може да продължи да обработва тези данни, без да въвежда допълнителни промени.

За да взаимодейства с базата данни, клиентското приложение извиква интерфейсните функции ODBC, които са внедрени в специални модули, наречени ODBC драйвери. Обикновено ODBC драйверите са DLL и една DLL може да поддържа множество ODBC драйвери. Когато инсталирате всеки SQL сървър на компютър (база данни, която поддържа един от езиковите стандарти на SQL, например SQL-92), регистрацията в системния регистър на Windows и съответния ODBC драйвер се извършва автоматично.

ODBC архитектура

Архитектурата на ODBC е представена от четири компонента (Фигура 1.1):

  • Клиентско приложение, осъществяващо повиквания към ODBC функции.
  • Мениджър на драйвери, който зарежда и пуска ODBC драйвери, които се изискват от клиентските приложения. Мениджърът на драйвери обработва повикванията на функцията ODBC или ги предава на драйвера.
  • ODBC драйвер, който обработва повиквания към SQL функции, предавайки изпълнения SQL израз на SQL сървъра и резултата от извиканата функция на клиентското приложение.
  • Източник на данни, дефиниран като специфична локална или отдалечена база данни.

Фигура: 1.1. ODBC архитектура

Основната цел на мениджъра на драйвери е да зареди драйвер, който съответства на включен източник на данни и да капсулира взаимодействието с различни типове източници на данни чрез използване на различни ODBC драйвери.

ODBC драйверите, когато получават извиквания на функции, взаимодействат с клиентското приложение, за да изпълняват следните задачи: