SQL Server Yerel İstemci Başlığı ve Kütüphane Dosyalarının Kullanımı

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnalytics Platform System (PDW)

Important

SQL Server Native Client (SNAC) ile birlikte gönderilmez:

  • SQL Server 2022 (16.x) ve sonraki sürümleri
  • SQL Server Management Studio 19 ve sonraki sürümleri

YENI uygulama geliştirme için SQL Server Yerel İstemcisi (SQLNCLI veya SQLNCLI11) ve SQL Server için eski Microsoft OLE DB Sağlayıcısı (SQLOLEDB) önerilmez.

Yeni projeler için aşağıdaki sürücülerden birini kullanın:

SQL Server Veritabanı Altyapısı'nın (sürüm 2012 ile 2019 arasında) bir bileşeni olarak gelen SQLNCLI için, Destek Yaşam Döngüsü özel durumukonusuna bakın.

SQL Server Yerel İstemci başlığı ve kütüphane dosyaları SQL Server ile kuruludur. Bir uygulama geliştirirken, geliştirme için gerekli tüm dosyaları geliştirme ortamınıza kopyalayıp yüklemek önemlidir. SQL Server Native Client kurulumu ve yeniden dağıtımı hakkında daha fazla bilgi için SQL Server Native Client Kurulumu bölümüne bakınız.

SQL Server Yerel İstemci başlığı ve kütüphane dosyaları aşağıdaki konuma yüklenmiştir:

%PROGRAM DOSYALARI%\Microsoft SQL Server\110\SDK

SQL Server Native Client başlık dosyası (sqlncli.h), SQL Server Native Client veri erişim işlevselliğini özel uygulamalarınıza eklemek için kullanılabilir. SQL Server Native Client başlık dosyası, SQL Server 2005 (9.x)'de tanıtılan yeni özelliklerden faydalanmak için gereken tüm tanımları, nitelikleri, özellikleri ve arayüzleri içerir.

SQL Server Yerel İstemci başlık dosyasına ek olarak, ODBC için SQL Server Toplu Kopyalama Programı (BCP) işlevselliği için dışa aktarma kütüphanesi olan sqlncli11.lib kütüphane dosyası da mevcuttur.

SQL Server Native Client başlık dosyası, Microsoft Data Access Components (MDAC) ile kullanılan sqloledb.h ve odbcss.h başlık dosyalarıyla geriye dönük uyumludur, ancak SQLOLEDB için CLSID'ler (MDAC ile birlikte gelen SQL Server için OLE DB sağlayıcısı) veya XML işlevselliği için semboller (SQL Server Native Client tarafından desteklenmemektedir) içermez.

ODBC uygulamaları, aynı programda SQL Server Native Client başlığına (sqlncli.h) ve odbcss.h'ye referans veremez. SQL Server 2005 (9.x)'de sunulan özelliklerden hiçbirini kullanmıyor olsanız bile, SQL Server Native Client başlık dosyası eski odbcss.h yerine çalışacaktır.

SQL Server Native Client OLE DB sağlayıcısını kullanan OLE DB uygulamaları yalnızca sqlncli.h adresine başvurmalıdır. Bir uygulama hem MDAC (SQLOLEDB) hem de SQL Server Native Client OLE DB sağlayıcısını kullanıyorsa, hem sqloledb.h hem de sqlncli.h adreslerine referans verebilir, ancak önce sqloledb.h referansı olmalıdır.

SQL Server Yerel İstemci Başlık Dosyasının Kullanımı

SQL Server Native Client başlık dosyasını kullanmak için C/C++ programlama kodunuzda bir include ifadesi kullanmanız gerekir. Aşağıdaki bölümler, hem OLE DB hem de ODBC uygulamaları için bunun nasıl yapılacağını açıklar.

Note

SQL Server Native Client başlığı ve kütüphane dosyaları yalnızca Visual Studio C++ 2002 veya daha sonrası kullanılarak derlenebilir.

OLE DB

SQL Server Native Client başlık dosyasını bir OLE DB uygulamasında aşağıdaki programlama kodu satırları kullanılarak kullanmak için:

#define _SQLNCLI_OLEDB_  
include "sqlncli.h";  

Note

Eğer uygulama hem OLE DB hem de ODBC API'lerini kullanıyorsa, yukarıda gösterilen ilk kod satırı çıkarılmalıdır. Ayrıca, başvuruda sqloledb.h için bir include bildirimi varsa, sqlncli.h için include bildirimi bundan sonra gelmelidir.

Yerel SQL Server istemciyle bir veri kaynağına bağlantı oluştururken, sağlayıcı adı dizisi olarak "SQLNCLI11" kullanın.

ODBC

SQL Server Native Client başlık dosyasını bir ODBC uygulamasında aşağıdaki programlama kodu satırlarını kullanarak kullanmak için:

#define _SQLNCLI_ODBC_  
include "sqlncli.h";  

Note

Eğer uygulama hem OLE DB hem de ODBC API'leri kullanıyorsa, yukarıda gösterilen ilk kod satırı çıkarılmalıdır. Ayrıca, uygulamada odbcss.h için bir #include ifade varsa, bu bildirim kaldırılmalıdır.

SQL Server Native Client üzerinden bir veri kaynağına bağlantı oluştururken, sürücü adı dizisi olarak "SQL Server Native Client 11.0" kullanın.

Sürümlere Göre Bileşen Adları ve Özellikleri

Mülkiyet SQL Server Yerel İstemcisi

SQL Server 2005
SQL Server Native Client 10.0

SQL Server 2008
SQL Server Yerel İstemcisi 11.0

SQL Server 2012 (11.x)
MDAC
ODBC sürücü adı SQL Yerel İstemcisi SQL Server Native Client 10.0 SQL Server Yerel İstemcisi 11.0 SQL Server
ODBC başlık dosya adı Sqlncli.h Sqlncli.h Sqlncli.h odbcss.h
ODBC sürücü DLL Sqlncli.dll Sqlncl10.dll Sqlncl11.dll sqlsrv32.dll
BCP API'leri için ODBC lib dosyası Sqlncli.lib Sqlncli10.lib Sqlncli11.lib Odbcbcp.lib
BCP API'leri için ODBC DLL Sqlncli.dll Sqlncli10.dll Sqlncli11.dll Odbcbcp.dll
OLE DB PROGID SQLNCLI SQLNCLI10 SQLNCLI11 SQLOLEDB
OLE DB başlık dosya adı Sqlncli.h Sqlncli.h Sqlncli.h Sqloledb.h
OLE DB sağlayıcı DLL Sqlncli.dll Sqlncli10.dll Sqlncli11.dll Sqloledb.dll

sqlncli.h, SQLNCLI_VER makrosu üzerinden birden fazla Yerel İstemci SQL Server sürümünü destekler. Varsayılan olarak, SQLNCLI_VER varsayılan olarak SQL Server Native Client en son sürümüne geçer. sqlncli11.dllyerine sqlncli10.dll kullanan bir uygulama oluşturmak için SQLNCLI_VER 10'a ayarlayın.

Statik Bağlantı ve BCP Fonksiyonları

Bir uygulama BCP fonksiyonlarını kullandığında, uygulamanın bağlantı dizesi'te, uygulamayı derlemek için kullanılan başlık dosyası ve kütüphaneyle birlikte gelen aynı sürümden sürücüyü belirtmesi önemlidir.

Örneğin, SQL Server Native Client ile bir uygulama derlerseniz, ilgili kütüphane dosyası (sqlncli11.lib) ve başlık dosyası (sqlncli.h) \Program Files\Microsoft SQL Server\110\SDK'dan derlerseniz, (örnek olarak ODBC'yi kullanarak) "DRIVER={SQL Server Native Client 11.0}" belirttiğinizden emin olun bağlantı dizesi.

Daha fazla bilgi için Toplu Kopyalama İşlemlerini Gerçekleştirme bölümüne bakınız.