ODBC چیست و چگونه عمل می کند؟

odbc که مخفف کلمه (Open Database Connectivity) است، فراهم کننده فضایی به عنوان رابط نرم افزاری ( API ) می باشد که از طریق آن می توان از DBMS های مختلف استفاده و بهره برداری کرد. هدف طراحان این سیستم، بوجود آوردن بستری مستقل از زبان های برنامه نویسی ، سیستم عامل ها و DBMS ها می باشد.

تاریخچه odbc :

ODBC متشکل از “رابط های همتراز فراخوان ” یا (CLI) ها است. که این رابطه ها توسط سازمانها و شرکت های SQL Access Group ، X/Open (که حالا بخشی از The Open Group می باشد) و ISO/IEC تعریف و استاندارد سازی شده اند.

شرکت مایکروسافت رابط ODBC را با اصول و رابط های SQL Access Group طراحی و پیاده سازی کرد. که در زیر نسخه های آن به ترتیب زمان ذکر شده است:

• 1.0: released in September 1992
• 2.0: ca 1994
• 3.0: ca 1995
• 3.5: ca 1997

روش کار و عملکرد odbc :

برای استفاده از سیستم ODBC می بایست سه مولفه مختلف موجود باشد که عبارتند ا ز:
ODBC driver
ODBC client
DBMS server

ابتدا ODBC client درخواست های مورد نظر خود را برای DBMS server ارسال می کند،سپس DBMS server بوسیله ODBC driver این تقاضا را ترجمه کرده و نتیجه را که بوسیله ODBC driver ترجمه شده برای ODBC client می فرستد.

ارتباط ODBC با دیگر روش ها :

JDBC-ODBC

این روش متشکل از یک راه انداز (Driver) رابط JDBC می باشد که از یک راه انداز (Driver) رابط ODBC برای اتصال به پایگاه داده مقصد استفاده می نماید. این راه انداز اسلوب های JDBC را به فراخوان های تابع (Function calls) ODBC ترجمه می نماید. برنامه نویسان عموماً از این پل ارتباطی برای پایگاه داده ای خاصی استفاده می کنند که از راه انداز JDBC به خوبی پشتیبانی نمی کنند. مثلاً Sun Microsystems یکی از این پل هل را در JVM خود جای داده است.

ODBC-JDBC
این روش نیز مانند روش قبلی از یک راه انداز ODBC جهت بهره مندی از سرویس های یک راه انداز (Driver) JDBC جهت اتصال به پایگاه داده ی مقصد استفاده می نماید.
OLE DB
شرکت مایکروسافت این رابطه را برطبق ODBC و برای ساده سازی و توسعه برنامه های بر طبق تکنولوژی COM پدید آورده است مانند Visual basic.
پیاده سازی ها
پیاده سازی های مختلفی از ODBC برای سیستم عامل های مختلف موجود است ، مانند: Microsoft Windows, Unix, Linux, OS/2, OS/400, IBM i5/OS, Mac OS X. همینطور درایور های مختلفی از آن برای DBMS های متفاوتی بوجود آمده است ، مانند: Oracle, DB2, Microsoft SQL Server, Sybase, Pervasive SQL, IBM Lotus Domino, MySQL, PostgreSQL ,Microsoft Access.
Microsoft ODBC
شرکت مایکروسافت نخستین پیاده سازی خود از ODBC در قالب یکسری DLL ها در سورس کدهای ویندوز بوجود آورد وآن را در نسخه های مختلف ویندوز منتشر کرد.
iODBC
Independent Open DataBase Connectivity یک ارائه متن باز (Open source) می باشد که از ODBC و X/Open گرفته شده است و بطور کلی برای محیط هایی بجز Microsoft Windows مورد استفاده قرار می گیرد. نگهداری و توسعه این پروژه بر طبق LGPL و BSD لایسنس می باشد. شرکت APPLE نیز از این پیاده سازی در سیستم عامل خود (Mac Os X) استفاده کرده است.

مهندسین و برنامه نویسان دیگر سیستم ها نیز این پیاده سازی را در سیستم های خود اعمال کرده اند و توسعه داده اند ، مانند : Mac OS 9, Linux (x86, x86-64, IA-64, Alpha, MIPS, and ARM), Solaris (SPARC and x86), AIX, HP-UX (PA-RISC and Itanium), Compaq Tru64, Digital UNIX, Dynix, Generic UNIX 5.4, FreeBSD, DG-UX, and OpenVMS.
علت این همه گستردگی این پروژه در سیستم عامل های متفاوت ، متن باز بودن آن است که از قابلیت های آن نسبت به دیگر پروژه ها می باشد.
IBM i5/OS
IBM i5/OS یک پیاده سازی از رابط ODBC است که برای پشتیبانی از پایگاه داده DB2 بوجود آمده است.
UDBC

یک رابط چند سکویی (cross-platform) با ترکیب ODBC و SAG CLI می باشد که برای سیستم های غیر از سیستم عامل ویندوز طراحی و پیاده سازی شده است و اکنون با پروژه iODBC یکی شده است.

شرکت طراحی وب سایت همیاران