Aracılığıyla paylaş


ODBC nedir?

ODBC hakkında birçok yanlış anlama bilgi işlem dünyasında mevcuttur. Son kullanıcı için bu, Microsoft Windows Denetim Masası'ndaki bir simgedir. Uygulama programcısı için, veri erişim yordamlarını içeren bir kitaplıktır. Diğer birçok kişi için bu, hayal bile edemeyeceğim tüm veritabanı erişim sorunlarının yanıtıdır.

Her şeyden önce ODBC, veritabanı API'si için bir belirtimdir. Bu API herhangi bir DBMS veya işletim sisteminden bağımsızdır; Bu kılavuzda C kullanılıyor olsa da ODBC API'si dilden bağımsızdır. ODBC API'sinde Open Group ve ISO/IEC'nin CLI belirtimleri temel alınmıştır. ODBC 3. x bu belirtimlerin her ikisini de tam olarak uygular - ODBC'nin önceki sürümleri bu belirtimlerin ön sürümlerini temel alır, ancak bunları tam olarak uygulamaz - ve kaydırılabilir imleçler gibi ekran tabanlı veritabanı uygulamalarının geliştiricileri tarafından yaygın olarak ihtiyaç duyulan özellikleri ekler.

ODBC API'sindeki işlevler DBMS'ye özgü sürücülerin geliştiricileri tarafından uygulanır. Uygulamalar, verilere DBMS'den bağımsız bir şekilde erişmek için bu sürücülerdeki işlevleri çağırır. Sürücü Yöneticisi, uygulamalar ve sürücüler arasındaki iletişimi yönetir.

Microsoft, Microsoft Windows 95 ve üzerini çalıştıran bilgisayarlar için bir sürücü yöneticisi sağlar, çeşitli ODBC sürücüleri yazmıştır ve bazı uygulamalarından ODBC işlevlerini çağırsa da, herkes ODBC uygulamaları ve sürücüleri yazabilir. Aslında, günümüzde kullanılabilen ODBC uygulamalarının ve sürücülerinin büyük çoğunluğu Microsoft dışındaki şirketler tarafından yazılmıştır. Ayrıca, ODBC sürücüleri ve uygulamaları macOS ve çeşitli UNIX platformlarında mevcuttur.

Uygulama ve sürücü geliştiricilerine yardımcı olmak için Microsoft, Windows 95 ve üzerini çalıştıran bilgisayarlar için sürücü yöneticisi, yükleyici DLL'i, test araçları ve örnek uygulamalar sağlayan bir ODBC Yazılım Geliştirme Seti (SDK) sunar. Microsoft, bu SDK'ları Macintosh'a ve çeşitli UNIX platformlarına taşıması için Visigenic Software ile birlikte çalışmaktadır.

ODBC'nin, veritabanı özelliklerini desteklemek için değil kullanıma sunma amacıyla tasarlandığını anlamak önemlidir. Bu nedenle, uygulama yazarları ODBC kullanmanın basit bir veritabanını aniden tam özellikli bir ilişkisel veritabanı altyapısına dönüştürmesini beklememelidir. Sürücü yazılımcılarının, altta yatan veritabanında bulunmayan işlevleri uygulaması da beklenmez. Bunun bir istisnası, dosya verilerine (Xbase dosyasındaki veriler gibi) doğrudan erişen sürücüler yazan geliştiricilerin en az düzeyde SQL işlevselliğini destekleyen bir veritabanı altyapısı yazmaları gerekmesidir. Bir diğer istisna da, daha önce Microsoft Veri Erişim Bileşenleri (MDAC) SDK'sında yer alan Windows SDK'sının ODBC bileşeninin belirli bir işlevsellik düzeyi uygulayan sürücüler için kaydırılabilir imleçlerin benzetimini sağlayan bir imleç kitaplığı sağlamasıdır.

ODBC kullanan uygulamalar, veritabanları arası tüm işlevlerden sorumludur. Örneğin ODBC, heterojen bir birleştirme altyapısı veya dağıtılmış işlem işlemcisi değildir. Ancak DBMS'nin bağımsız olması nedeniyle bu tür veritabanları arası araçlar oluşturmak için kullanılabilir.