Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analitik Platform Sistemi (PDW)
Microsoft Fabric'te SQL veritabanı
OLE DB sürücüsünü indirme
SQL Server için OLE DB Sürücüsü ile Microsoft Veri Erişim Bileşenleri (MDAC) arasında birçok fark vardır; Windows Vista ile başlayan verilere erişim bileşenleri artık Windows Veri Erişim Bileşenleri (veya Windows DAC) olarak adlandırılır. Her ikisi de SQL Server veritabanlarına yerel veri erişimi sağlamakla birlikte, SQL Server için OLE DB Sürücüsü, SQL Server'ın yeni özelliklerini ortaya çıkarmak ve aynı zamanda önceki sürümlerle geriye dönük uyumluluğu korumak için tasarlanmıştır.
Ayrıca, MDAC OLE DB, ODBC ve ActiveX Veri Nesneleri (ADO) kullanımı için bileşenler içerse de, SQL Server için OLE DB Sürücüsü yalnızca OLE DB'yi uygular (ancak ADO, SQL Server için OLE DB Sürücüsü'nün işlevselliğine erişebilir).
SQL Server için OLE DB Sürücüsü ve MDAC aşağıdaki diğer alanlarda farklılık gösterir:
SQL Server için OLE DB Sürücüsü'ne erişmek için ADO kullanan kullanıcılar, SQL OLE DB sağlayıcısına eriştiklerine göre daha az filtreleme işlevi görebilirler.
Bir ADO uygulaması SQL Server için OLE DB Sürücüsü kullanırsa ve hesaplanan bir sütunu güncellemeye çalışırsa, hata bildirilir. MDAC ile güncelleme kabul edildi ama görmezden gelindi.
SQL Server için OLE DB Sürücüsü, tek bir bağımsız dinamik bağlantı kütüphanesi (DLL) dosyasıdır. Kamuya açık arayüzler, hem dağıtımı kolaylaştırmak hem de güvenlik riskini sınırlamak için minimuma getirilmiştir.
Sadece OLE DB arayüzleri desteklenmektedir.
SQL Server için OLE DB Sürücüsü, MDAC ile kullanılan isimlerden farklıdır.
MDAC bileşenleri tarafından sağlanan kullanıcı erişimine sahip işlevsellik, SQL Server için OLE DB Driver kullanıldığında mevcuttur. Bu, bağlantı havuzu, ADO desteği ve istemci imleci desteği şunları içerir ancak bunlarla sınırlı değildir. Bu özelliklerden herhangi biri kullanıldığında, SQL Server için OLE DB Driver yalnızca veritabanı bağlantısı sağlar. MDAC, izleme, yönetim kontrolleri ve performans sayacları gibi işlevler sağlar.
Uygulamalar, OLE DB Driver for SQL Server ile OLE DB çekirdek servislerini kullanabilir, ancak OLE DB imleç motoru kullanıyorlarsa, yeni SQL Server 2005 (9.x) veri tipleri hakkında bilgiye sahip olmadığı için ortaya çıkabilecek olası sorunlardan kaçınmak için veri tipi uyumluluk seçeneğini kullanmalıdırlar.
SQL Server için OLE DB Sürücüsü, önceki SQL Server veritabanlarına erişimi destekler.
SQL Server için OLE DB Driver XML entegrasyonu içermez. SQL Server için OLE DB Sürücüsü SELECT desteğini verir ... XML sorguları için FOR, ancak başka hiçbir XML işlevselliğini desteklemez. Ancak, SQL Server için OLE DB Sürücüsü, SQL Server 2005 (9.x)'de tanıtılan xml veri tipini destekler.
SQL Server için OLE DB Sürücüsü, istemci tarafı ağ kütüphanelerinin yalnızca bağlantı dizisi öznitelikleriyle yapılandırılmasını destekler. Daha kapsamlı ağ kütüphanesi yapılandırmasına ihtiyacınız varsa, SQL Server Yapılandırma Yöneticisi'ni kullanmalısınız.
MDAC bağlantı dizileri, Trusted_Connection anahtar kelimesi için Boolean değeri (doğru) sağlar. SQL Server bağlantı dizisi için bir OLE DB Sürücüsü evet veya hayır kullanmak zorundadır.
Uyarılar ve hatalarda küçük değişiklikler yapıldı. Sunucu tarafından gönderilen uyarılar ve hatalar artık SQL Server için OLE DB Driver ile geçirildiğinde aynı şiddette kalır. Belirli uyarıları ve hataları yakalamaya güveniyorsanız, uygulamanızı kapsamlı şekilde test ettiğinizden emin olmalısınız.
SQL Server için OLE DB Sürücüsü, MDAC'a göre daha sıkı hata kontrolüne sahiptir; bu da OLE DB spesifikasyonlarına tam olarak uymayan bazı uygulamaların farklı davranabileceği anlamına gelir. Örneğin, SQLOLEDB sağlayıcısı sonuç parametreleri için parametre isimlerinin '@' ile başlaması gerektiği kuralı uygulamamış, ancak SQL Server için OLE DB Sürücüsü uygulamaktadır.
SQL Server için OLE DB Sürücüsü, başarısız bağlantılar konusunda MDAC'tan farklı davranır. Örneğin, MDAC, başarısız olan bir bağlantı için önbelleğe alınmış özellik değerlerini döndürürken, SQL Server için OLE DB Driver çağıran uygulamaya hata bildirir.
SQL Server için OLE DB Sürücüsü, Visual Studio Analyzer olayları oluşturmaz, bunun yerine Windows takip olayları oluşturur.
SQL Server için OLE DB Driver perfmon ile kullanılamaz. Perfmon, yalnızca Windows ile birlikte gelen MDAC SQLODBC sürücüsünü kullanan DSN'lerle kullanılabilen bir Windows aracıdır.
SQL Server için OLE DB Sürücüsü SQL Server 2005 (9.x) ve sonraki sürümlere bağlandığında, sunucu hatası 16947 SQL_ERROR olarak döner. Bu hata, konumlandırılmış bir güncelleme veya silme satırı güncelleyemeyip sildiğinde meydana gelir. MDAC ile SQL Server'ın herhangi bir sürümüne bağlandığında, sunucu hatası 16947 uyarı olarak döner (SQL_SUCCESS_WITH_INFO).
SQL Server için OLE DB Sürücüsü, daha önce uygulanmamış isteğe bağlı bir OLE DB arayüzü olan IDBDataSourceAdmin arayüzünü uygular; ancak yalnızca bu isteğe bağlı arayüzün CreateDataSource yöntemi uygulanmıştır. Bu özellik, SQL Server'ın gelecek bir sürümünde kaldırılacaktır. Bu özelliği yeni geliştirme çalışmalarında kullanmaktan kaçının ve şu anda bu özelliği kullanan uygulamaları değiştirmeyi planlayın.
OLE DB Driver for SQL Server, TABLO'da eşanlamlı ve TABLE_INFO şema satır kümelerinde eşanlamlılar döndürür, TABLE_TYPE olarak ayarlanmıştırSYNONYM.
Veri tipi varchar(max), varbinary(max), xml, udt veya diğer büyük nesne türlerinin geri dönüş değerleri, SQL Server 2005 (9.x)'ten önceki istemci sürümlerine iade edilemez. Bu türleri dönüş değeri olarak kullanmak istiyorsanız, SQL Server için OLE DB Driver kullanmalısınız.
MDAC, manuel ve örtük işlemlerin başında aşağıdaki ifadelerin yürütülmesine izin verirken, SQL Server için OLE DB Driver bunu sağlamaz. Otomatik commit modunda yürütülmelidirler.
Tüm tam metin işlemleri (indeks ve katalog DDL)
Tüm veritabanı işlemleri (veritabanı oluşturma, veritabanını değiştirme, veritabanını kaldır)
Yeniden yapılandırın
Kapatma
Öldürmek
Yedekleme
MDAC uygulamaları SQL Server'a bağlandığında, SQL Server 2005 (9.x)'te tanıtılan veri türleri, aşağıdaki tabloda gösterildiği gibi SQL Server 2000 (8.x) uyumlu veri tipleri olarak görünecektir.
SQL Server 2005 tipi SQL Server 2000 tipi varchar(max) text nvarchar(max) ntext varbinary(maks) image Udt varbinary xml ntext Bu tür eşleme, sütun meta verileri için geri dönen değerleri etkiler. Örneğin, bir metin sütununun maksimum boyutu 2.147.483.647'dir, ancak SQL Server için OLE DB Sürücüsü, platforma bağlı olarak varchar(max) sütunlarının maksimum boyutunu 2.147.483.647 veya -1 olarak bildirir.
SQL Server için OLE DB Sürücüsü, bağlantı dizislerinde belirsizlik sağlar (örneğin, bazı anahtar kelimeler birden fazla kez belirtilebilir ve çelişen anahtar kelimelerin konum veya öncelik temelinde çözünürlükle izin verilebilir) geriye dönük uyumluluk nedeniyle. SQL Server için OLE DB Sürücüsünün gelecekteki sürümleri, bağlantı dizelerinde belirsizliğe izin vermeyebilir. Uygulamaları SQL Server için OLE DB Sürücüsü kullanacak şekilde değiştirirken, bağlantı dizisi belirsizliğine olan bağımlılığı ortadan kaldırmak iyi bir uygulamadır.
İşlemleri başlatmak için OLE DB çağrısı kullanırsanız, SQL Server için OLE DB Sürücüsü ile MDAC arasında davranış farkı vardır; işlemler hemen OLE DB Driver for SQL Server ile başlar, ancak işlemler MDAC kullanılarak ilk veritabanı erişiminden sonra başlar. Bu, SQL Server'ın bir toplu veya depolanmış prosedür yürütülmesini tamamladıktan sonra @@TRANCOUNT toplu veya depolanan prosedürün başladığı zamanki gibi aynı olmasını gerektirdiği için bu durum beklenen prosedürlerin ve toplu prosedürlerin davranışını etkileyebilir.
SQL Server için OLE DB Sürücüsü ile ITransactionLocal::BeginTransaction işlemi hemen başlatılır. MDAC'ta işlem başlangıcı, uygulama örtük işlem modunda işlem gerektiren bir bildirim çalıştırana kadar gecikirdi. Daha fazla bilgi için bkz.SET IMPLICIT_TRANSACTIONS (Transact-SQL) .
Hem SQL Server için OLE DB Sürücüsü hem de MDAC, satır sürümleme kullanılarak okuma taahhüdü işlem izolasyonunu destekler, ancak yalnızca SQL Server için OLE DB Sürücüsü anlık görüntü işlem izolasyonunu destekler. (Programlama terimlerinde, satır versiyonlama kullanılarak okuma taahhüdü işlem izolasyonu, okuma taahhüdü işlemi ile aynıdır.).