Opsi Sambungan

Unduh driver PHP

Topik ini mencantumkan opsi yang diizinkan dalam array asosiatif (saat menggunakan sqlsrv_connect di driver SQLSRV) atau kata kunci yang diizinkan dalam nama sumber data (dsn) (saat menggunakan PDO::__construct di driver PDO_SQLSRV).

Tabel Opsi Koneksi

Kunci Nilai Deskripsi Bawaan
AccessToken String String byte dari token akses Microsoft Entra ini diekstrak dari respons JSON OAuth.

string koneksi tidak boleh berisi ID pengguna, kata sandi, atau Authentication kata kunci. Untuk informasi selengkapnya, lihat Menyambungkan Menggunakan autentikasi Microsoft Entra

Saat pengumpulan koneksi diaktifkan, driver melakukan hash pada konten token dan menambahkannya pada kata kunci APP untuk memastikan diferensiasi kunci kumpulan per identitas token (dimulai dengan versi 5.13.1). Jika aplikasi Anda tidak menentukan APP, hash ini muncul di program_name kolom sys.dm_exec_sessions.
Tidak diatur.
APLIKASI String Menentukan nama aplikasi yang digunakan dalam pelacakan. Ketika AccessToken ditentukan dengan pengumpulan koneksi diaktifkan, driver menambahkan hash internal ke APP untuk diferensiasi kunci kumpulan. Mengatur nilai untuk APP menggantikan AccessToken hash yang muncul di kolom program_namesys.dm_exec_sessions. Tidak diatur.
ApplicationIntent String Menyatakan jenis beban kerja aplikasi saat menyambungkan ke server. Nilai yang mungkin adalah ReadOnly dan ReadWrite.

Untuk informasi selengkapnya tentang Driver Microsoft untuk PHP untuk dukungan SQL Server untuk grup ketersediaan Always On, lihat Dukungan untuk Pemulihan Bencana, Ketersediaan Tinggi.
ReadWrite
AttachDBFileName String Menentukan file database mana yang harus dilampirkan server. Tidak diatur.
Autentikasi Salah satu string berikut:

SqlPassword

ActiveDirectoryPassword [TIDAK DIGUNAKAN LAGI]

ActiveDirectoryMsi

ActiveDirectoryServicePrincipal
Menentukan mode autentikasi.

Untuk informasi selengkapnya, lihat Menyambungkan Menggunakan autentikasi Microsoft Entra
Tidak diatur.
Set Karakter

(tidak didukung di driver PDO_SQLSRV)
String Menentukan kumpulan karakter yang digunakan untuk mengirim data ke server.

Nilai yang mungkin SQLSRV_ENC_CHAR dan UTF-8. Untuk informasi selengkapnya, lihat Cara: Mengirim dan Mengambil Data UTF-8 menggunakan Dukungan UTF-8 Bawaan.
SQLSRV_ENC_CHAR
ColumnEncryption Salah satu string berikut:

Diaktifkan

Nonaktif

String yang mengidentifikasi protokol pembuktian dan URL untuk pengesahan enklave
Menentukan apakah fitur Always Encrypted diaktifkan atau tidak. Jika protokol pengesahan dan URL ditentukan, Always Encrypted dengan enklave aman diaktifkan, asalkan persyaratan lain terpenuhi seperti yang dijelaskan dalam Menggunakan Always Encrypted dengan enklave aman dengan Driver PHP untuk SQL Server. Nonaktif
ConnectionPooling 1 atau benar untuk kumpulan koneksi diaktifkan.

0 atau false untuk mematikan koneksi pooling.
Menentukan apakah koneksi ditetapkan dari kumpulan koneksi (1 atau benar) atau tidak (0 atau salah).1 true (1)
ConnectRetryCount Bilangan bulat antara 0 dan 255 (inklusif) Jumlah maksimum upaya untuk membangun kembali koneksi yang rusak sebelum menyerah. Secara default, satu upaya dilakukan untuk membangun kembali koneksi saat rusak. Nilai 0 berarti tidak ada koneksi ulang yang akan dicoba. 1
ConnectRetryInterval Bilangan bulat antara 1 dan 60 (inklusif) Waktu, dalam detik, antara upaya untuk membangun kembali koneksi. Aplikasi akan mencoba untuk terhubung kembali segera setelah mendeteksi koneksi yang rusak, dan kemudian akan menunggu ConnectRetryInterval detik sebelum mencoba lagi. Kata kunci ini diabaikan jika ConnectRetryCount sama dengan 0. 10
Database String Menentukan nama database yang digunakan untuk koneksi yang sedang dibuat2. Database default untuk login yang digunakan.
DecimalPlaces

(tidak didukung di driver PDO_SQLSRV)
Bilangan bulat antara 0 dan 4 (inklusif) Menentukan tempat desimal saat memformat nilai uang yang diambil.

Opsi ini hanya berfungsi jika FormatDecimals benar. Bilangan bulat atau nilai negatif apa pun lebih dari 4 akan diabaikan.
Presisi dan skala default
Driver (perangkat lunak penggerak) String Menentukan driver Microsoft ODBC yang digunakan untuk berkomunikasi dengan SQL Server.

Kemungkinan nilai adalah:
Odbc Driver 18 untuk SQL Server
Driver ODBC 17 untuk SQL Server
Driver ODBC 13 untuk SQL Server
Odbc Driver 11 untuk SQL Server (hanya Windows).
Ketika kata kunci Driver tidak ditentukan, Driver Microsoft untuk PHP untuk SQL Server mencoba menemukan driver ODBC Microsoft yang didukung dalam sistem, dimulai dari versi ODBC terbaru dan seterusnya.
Enkripsi 1 atau benar untuk enkripsi aktif.

0 atau false untuk enkripsi nonaktif.
Menentukan apakah komunikasi dengan SQL Server dienkripsi (1 atau benar) atau tidak terenkripsi (0 atau salah)3. false (0)
Failover_Partner String Menentukan server dan instans cermin database (jika diaktifkan dan dikonfigurasi) untuk digunakan saat server utama tidak tersedia.

Ada batasan untuk digunakan Failover_Partner dengan MultiSubnetFailover. Untuk informasi selengkapnya, lihat Dukungan untuk Ketersediaan Tinggi dan Pemulihan Bencana.

Opsi ini tidak didukung di Linux atau macOS karena pencerminan database tidak didukung oleh driver ODBC di Linux atau macOS. Sebagai gantinya, gunakan grup ketersediaan Always On dan atur opsi MultiSubnetFailover dan TransparentNetworkIPResolution.
Belum diatur
FormatDecimals

(tidak didukung di driver PDO_SQLSRV)
1 atau true untuk memformat string desimal yang diambil.

0 atau false untuk perilaku pemformatan desimal default.
Menentukan apakah akan menambahkan nol di depan ke string desimal saat diperlukan dan mengaktifkan opsi DecimalPlaces untuk memformat tipe uang. Jika nilainya tetap 'false', maka perilaku default yang mengembalikan presisi tepat dan menghilangkan nol di depan untuk nilai kurang dari 1 akan digunakan.

Untuk informasi selengkapnya, lihat Memformat String Desimal dan Nilai Mata Uang.
false (0)
KeyStoreAuthentication KeyVaultPassword

KeyVaultClientSecret
Metode autentikasi untuk mengakses Azure Key Vault. Mengontrol jenis kredensial apa yang digunakan dengan KeyStorePrincipalId dan KeyStoreSecret. Untuk informasi selengkapnya, lihat Menggunakan Azure Key Vault. Tidak diatur.
KeyStorePrincipalId String Pengidentifikasi untuk akun yang ingin mengakses Azure Key Vault.

Jika KeyStoreAuthentication adalah KeyVaultPassword, nilai ini harus berupa nama pengguna Microsoft Entra.

Jika KeyStoreAuthentication keyVaultClientSecret, nilai ini harus berupa ID klien aplikasi.
Tidak diatur.
KeyStoreSecret String Rahasia kredensial untuk akun yang ingin mengakses Azure Key Vault.

Jika KeyStoreAuthentication adalah KeyVaultPassword, nilai ini harus berupa kata sandi Microsoft Entra.

Jika KeyStoreAuthentication adalah KeyVaultClientSecret, nilai ini harus menjadi rahasia klien aplikasi.
Tidak diatur.
Bahasa String Menentukan bahasa pesan yang dikembalikan oleh server. Bahasa yang tersedia tercantum dalam sys.syslanguages tabel.

Opsi ini tidak memengaruhi bahasa yang digunakan oleh driver itu sendiri, karena saat ini hanya tersedia dalam bahasa Inggris, dan tidak memengaruhi bahasa driver ODBC yang mendasarinya, yang bahasanya ditentukan oleh versi yang dilokalkan yang diinstal pada sistem klien. Oleh karena itu, mengubah pengaturan ini dapat mengakibatkan pesan dikembalikan dalam bahasa yang berbeda, tergantung pada apakah mereka berasal dari driver PHP, driver ODBC, atau SQL Server.
Defaultnya adalah bahasa yang diatur di SQL Server.
LoginTimeout Bilangan bulat (driver SQLSRV)

String (PDO_SQLSRV driver)
Menentukan jumlah detik untuk menunggu sebelum gagal dalam upaya koneksi. Tidak ada batas waktu.
MultipleActiveResultSets 1 atau true untuk menggunakan beberapa himpunan hasil aktif.

0 atau false untuk menonaktifkan beberapa kumpulan hasil aktif.
Menonaktifkan atau mengaktifkan secara eksplisit dukungan untuk beberapa kumpulan hasil aktif (MARS).

Untuk informasi selengkapnya, lihat Cara: Menonaktifkan Beberapa Kumpulan Hasil Aktif (MARS).
true (1)
MultiSubnetFailover String Selalu tentukan multiSubnetFailover=yes saat menyambungkan ke pendengar grup ketersediaan SQL Server 2012 (11.x) atau Instans Klaster Failover SQL Server 2012 (11.x). multiSubnetFailover=yes mengonfigurasi Driver Microsoft untuk PHP untuk SQL Server untuk memberikan deteksi dan koneksi yang lebih cepat ke server aktif (saat ini). Nilai yang mungkin adalah Ya dan Tidak.

Untuk informasi selengkapnya tentang driver Microsoft untuk PHP dalam mendukung SQL Server untuk grup ketersediaan Always On, lihat Dukungan untuk Ketersediaan Tinggi, Pemulihan Bencana.
Tidak
PWD

(tidak didukung di driver PDO_SQLSRV)
String Menentukan kata sandi yang terkait dengan ID Pengguna yang akan digunakan saat menyambungkan dengan SQL Server Authentication4. Tidak diatur.
QuotedId 1 atau true untuk menggunakan aturan SQL-92.

0 atau false untuk menggunakan aturan lama.
Menentukan apakah akan menggunakan aturan SQL-92 untuk pengidentifikasi yang dikutip (1 atau benar) atau menggunakan aturan Transact-SQL warisan (0 atau salah). true (1)
ReturnDatesAsStrings

(tidak didukung di driver PDO_SQLSRV)
1 atau true untuk mengembalikan jenis tanggal dan waktu sebagai string.

0 atau false untuk menghasilkan tipe tanggal dan waktu sebagai tipe PHP DateTime.
Mengekstraksi tipe tanggal dan waktu (datetime, smalldatetime, date, time, datetime2, dan datetimeoffset) dalam bentuk string atau tipe PHP. Untuk informasi selengkapnya, lihat Cara: Mengambil Jenis Tanggal dan Waktu sebagai String Menggunakan Driver SQLSRV.

Saat menggunakan driver PDO_SQLSRV, tanggal dikembalikan sebagai string kecuali ditentukan lain. Untuk informasi selengkapnya, lihat Cara: Mengambil Jenis Tanggal dan Waktu sebagai Objek DateTime PHP Menggunakan Driver PDO_SQLSRV.
salah
Dapat digulir String "buffered" menunjukkan bahwa Anda menginginkan kursor sisi klien (buffered), yang memungkinkan Anda untuk meng-cache seluruh set hasil dalam memori. Untuk informasi selengkapnya, lihat Jenis Kursor (Driver SQLSRV). Kursor yang hanya bergerak maju
Server

(tidak didukung di driver SQLSRV)
String Instans SQL Server yang akan disambungkan.

Anda juga dapat menentukan nama jaringan virtual, untuk menyambungkan ke grup ketersediaan AlwaysOn. Untuk informasi selengkapnya tentang Driver Microsoft untuk PHP untuk dukungan SQL Server untuk grup ketersediaan Always On, lihat Dukungan untuk Pemulihan Bencana, Ketersediaan Tinggi.
Server adalah kata kunci yang diperlukan (meskipun tidak harus menjadi kata kunci pertama dalam string koneksi). Jika nama server tidak diteruskan ke kata kunci, upaya dilakukan untuk menyambungkan ke instans lokal.

Nilai yang diteruskan ke Server dapat menjadi nama instans SQL Server, atau alamat IP instans. Anda dapat secara opsional menentukan nomor port (misalnya, sqlsrv:server=(local),1033).

Mulai versi 3.0 dari Microsoft Drivers untuk PHP untuk SQL Server Anda juga dapat menentukan instans LocalDB dengan server=(localdb)\instancename. Untuk informasi selengkapnya, lihat Dukungan untuk LocalDB.
TraceFile String Menentukan jalur untuk file yang digunakan untuk melacak data. Tidak diatur.
TraceOn 1 atau true untuk mengaktifkan pelacakan.

0 atau false untuk menonaktifkan pelacakan.
Menentukan apakah pelacakan ODBC diaktifkan (1 atau benar) atau dinonaktifkan (0 atau salah) untuk koneksi yang dibuat. false (0)
TransactionIsolation Driver SQLSRV menggunakan nilai berikut:

SQLSRV_TXN_READ_UNCOMMITTED

SQLSRV_TXN_READ_COMMITTED

SQLSRV_TXN_REPEATABLE_READ

SQLSRV_TXN_SNAPSHOT

SQLSRV_TXN_SERIALIZABLE

Driver PDO_SQLSRV menggunakan nilai berikut:

PDO::SQLSRV_TXN_READ_UNCOMMITTED

PDO::SQLSRV_TXN_READ_COMMITTED

PDO::SQLSRV_TXN_REPEATABLE_READ

PDO::SQLSRV_TXN_SNAPSHOT

PDO::SQLSRV_TXN_SERIALIZABLE
Menentukan tingkat isolasi transaksi.

Untuk informasi selengkapnya tentang isolasi transaksi, lihat MENGATUR TINGKAT ISOLASI TRANSAKSI dalam dokumentasi SQL Server.
SQLSRV_TXN_READ_COMMITTED

atau

PDO::SQLSRV_TXN_READ_COMMITTED
TransparentNetworkIPResolution Diaktifkan atau Dinonaktifkan Mempengaruhi urutan koneksi ketika IP pertama yang terpecahkan dari nama host tidak merespons dan terdapat beberapa IP yang terhubung dengan nama host.

Ini berinteraksi dengan MultiSubnetFailover untuk menyediakan urutan koneksi yang berbeda. Untuk informasi selengkapnya, lihat Resolusi IP Jaringan Transparan atau Menggunakan Resolusi IP Jaringan Transparan.
Diaktifkan
TrustServerCertificate 1 atau true untuk mempercayai sertifikat.

0 atau false untuk tidak mempercayai sertifikat.
Menentukan apakah klien harus mempercayai (1 atau benar) atau menolak (0 atau salah) sertifikat server yang ditandatangani sendiri. false (0)
UID

(tidak didukung di driver PDO_SQLSRV)
String Menentukan ID Pengguna yang akan digunakan saat menyambungkan dengan AutentikasiSQL Server 4. Tidak diatur.
WSID String Menentukan nama komputer untuk pelacakan. Belum ditentukan.
  1. Atribut ConnectionPooling tidak dapat digunakan untuk mengaktifkan/menonaktifkan pengumpulan koneksi di Linux dan macOS. Lihat Kumpulan Koneksi (Driver Microsoft untuk PHP dan SQL Server).

  2. Semua kueri yang dijalankan pada koneksi yang telah dibuat diarahkan ke database yang ditentukan oleh atribut Database. Namun, jika pengguna memiliki izin yang sesuai, data di database lain dapat diakses dengan menggunakan nama yang sepenuhnya memenuhi syarat. Misalnya, jika database master diatur dengan Database atribut koneksi, masih dimungkinkan untuk menjalankan kueri Transact-SQL yang mengakses tabel AdventureWorks.HumanResources.Employee dengan menggunakan nama yang sepenuhnya memenuhi syarat.

  3. Mengaktifkan Encryption dapat memengaruhi performa beberapa aplikasi karena overhead komputasi yang diperlukan untuk mengenkripsi data.

  4. Atribut UID dan PWD keduanya harus diatur saat menyambungkan dengan Autentikasi SQL Server.

Banyak kunci yang didukung merupakan atribut dari string koneksi ODBC. Untuk informasi tentang string koneksi ODBC, lihat Menggunakan Kata Kunci String Koneksi dengan SQL Native Client.

Lihat Juga

Menyambungkan ke Server