Menggunakan Header Klien Asli SQL Server dan File Pustaka
Berlaku untuk: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Penting
SQL Server Native Client (SNAC) tidak dikirim dengan:
- SQL Server 2022 (16.x) dan versi yang lebih baru
- SQL Server Management Studio 19 dan versi yang lebih baru
SQL Server Native Client (SQLNCLI atau SQLNCLI11) dan Penyedia Microsoft OLE DB warisan untuk SQL Server (SQLOLEDB) tidak direkomendasikan untuk pengembangan aplikasi baru.
Untuk proyek baru, gunakan salah satu driver berikut:
Untuk SQLNCLI yang dikirim sebagai komponen SQL Server Database Engine (versi 2012 hingga 2019), lihat pengecualian Siklus Hidup Dukungan ini.
Header Klien Asli SQL Server dan file pustaka diinstal dengan SQL Server. Saat mengembangkan aplikasi, penting untuk menyalin dan menginstal semua file yang diperlukan untuk pengembangan ke lingkungan pengembangan Anda. Untuk informasi selengkapnya tentang menginstal dan mendistribusikan ulang SQL Server Native Client, lihat Menginstal SQL Server Native Client.
Header Klien Asli SQL Server dan file pustaka diinstal di lokasi berikut:
%PROGRAM FILES%\Microsoft SQL Server\110\SDK
File header Klien Asli SQL Server (sqlncli.h) dapat digunakan untuk menambahkan fungsionalitas akses data SQL Server Native Client ke aplikasi kustom Anda. File header Klien Asli SQL Server berisi semua definisi, atribut, properti, dan antarmuka yang diperlukan untuk memanfaatkan fitur baru yang diperkenalkan di SQL Server 2005 (9.x).
Selain file header Klien Asli SQL Server, ada juga file pustaka sqlncli11.lib yang merupakan pustaka ekspor untuk fungsionalitas SQL Server Bulk Copy Program (BCP) untuk ODBC.
File header Klien Asli SQL Server kompatibel mundur dengan file header sqloledb.h dan odbcss.h yang digunakan dengan Microsoft Data Access Components (MDAC), tetapi tidak berisi CLSID untuk SQLOLEDB (penyedia OLE DB untuk SQL Server yang disertakan dengan MDAC) atau simbol untuk fungsionalitas XML (yang tidak didukung oleh SQL Server Native Client).
Aplikasi ODBC tidak dapat mereferensikan header Klien Asli SQL Server (sqlncli.h) dan odbcss.h dalam program yang sama. Bahkan jika Anda tidak menggunakan salah satu fitur yang diperkenalkan di SQL Server 2005 (9.x), file header Klien Asli SQL Server akan berfungsi sebagai pengganti odbcss.h yang lebih lama.
Aplikasi OLE DB yang menggunakan penyedia SQL Server Native Client OLE DB hanya perlu mereferensikan sqlncli.h. Jika aplikasi menggunakan penyedia MDAC (SQLOLEDB) dan SQL Server Native Client OLE DB, aplikasi dapat mereferensikan sqloledb.h dan sqlncli.h, tetapi referensi ke sqloledb.h harus menjadi yang pertama.
Menggunakan File Header Klien Asli SQL Server
Untuk menggunakan file header Klien Asli SQL Server, Anda harus menggunakan pernyataan sertakan dalam kode pemrograman C/C++Anda. Bagian berikut menjelaskan cara melakukan ini untuk aplikasi OLE DB dan ODBC.
Catatan
Header Klien Asli SQL Server dan file pustaka hanya dapat dikompilasi menggunakan Visual Studio C++ 2002 atau yang lebih baru.
OLE DB
Untuk menggunakan file header Klien Asli SQL Server dalam aplikasi OLE DB, gunakan baris kode pemrograman berikut:
#define _SQLNCLI_OLEDB_
include "sqlncli.h";
Catatan
Baris pertama kode yang ditunjukkan di atas harus dihilangkan jika API OLE DB dan ODBC digunakan oleh aplikasi. Selain itu, jika aplikasi memiliki pernyataan include untuk sqloledb.h, pernyataan include untuk sqlncli.h harus datang setelahnya.
Saat membuat koneksi ke sumber data melalui SQL Server Native Client, gunakan "SQLNCLI11" sebagai string nama penyedia.
ODBC
Untuk menggunakan file header Klien Asli SQL Server dalam aplikasi ODBC, gunakan baris kode pemrograman berikut:
#define _SQLNCLI_ODBC_
include "sqlncli.h";
Catatan
Baris pertama kode yang ditunjukkan di atas harus dihilangkan jika API OLE DB dan ODBC digunakan oleh aplikasi. Selain itu, jika aplikasi memiliki #include
pernyataan untuk odbcss.h, aplikasi harus dihapus.
Saat membuat koneksi ke sumber data melalui SQL Server Native Client, gunakan "SQL Server Native Client 11.0" sebagai string nama driver.
Nama Komponen dan Properti berdasarkan Versi
Properti | SQL Server Native Client 11.0 SQL Server 2005 |
SQL Server Native Client 10.0 SQL Server 2008 |
SQL Server Native Client 11.0 SQL Server 2012 (11.x) |
MDAC |
---|---|---|---|---|
Nama driver ODBC | Klien Asli SQL | SQL Server Native Client 10.0 | SQL Server Native Client 11.0 | SQL Server |
Nama file header ODBC | Sqlncli.h | Sqlncli.h | Sqlncli.h | Odbcss.h |
ODBC driver DLL | Sqlncli.dll | Sqlncl10.dll | Sqlncl11.dll | sqlsrv32.dll |
File lib ODBC untuk API BCP | Sqlncli.lib | Sqlncli10.lib | Sqlncli11.lib | Odbcbcp.lib |
ODBC DLL untuk API BCP | Sqlncli.dll | Sqlncli10.dll | Sqlncli11.dll | Odbcbcp.dll |
OLE DB PROGID | SQLNCLI | SQLNCLI10 | SQLNCLI11 | SQLOLEDB |
Nama file header OLE DB | Sqlncli.h | Sqlncli.h | Sqlncli.h | Sqloledb.h |
DLL penyedia OLE DB | Sqlncli.dll | Sqlncli10.dll | Sqlncli11.dll | Sqloledb.dll |
sqlncli.h mendukung beberapa versi SQL Server Native Client melalui makro SQLNCLI_VER. Secara default, SQLNCLI_VER default ke versi terbaru SQL Server Native Client. Untuk membangun aplikasi yang menggunakan sqlncli10.dll daripada sqlncli11.dll, atur SQLNCLI_VER ke 10.
Fungsi Penautan Statis dan BCP
Ketika aplikasi menggunakan fungsi BCP, penting bagi aplikasi untuk menentukan dalam string koneksi driver dari versi yang sama yang dikirim dengan file header dan pustaka yang digunakan untuk mengkompilasi aplikasi.
Misalnya, jika Anda mengkompilasi aplikasi menggunakan SQL Server Native Client, dan file pustaka terkait (sqlncli11.lib) dan file header (sqlncli.h) dari \Program Files\Microsoft SQL Server\110\SDK, pastikan untuk menentukan (menggunakan ODBC sebagai contoh) "DRIVER={SQL Server Native Client 11.0}" di string koneksi.
Untuk informasi selengkapnya, lihat Melakukan Operasi Salin Massal.