Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyambungkan PHP ke MSSQL melalui PDO ODBC?

Bagaimana untuk Menyambungkan PHP ke MSSQL melalui PDO ODBC?

Patricia Arquette
Patricia Arquetteasal
2024-11-07 03:14:02743semak imbas

How to Connect PHP to MSSQL via PDO ODBC?

Menyambungkan PHP ke MSSQL melalui PDO ODBC

Soalan:

Walaupun ODBC tersedia sebagai pemacu, cuba untuk mewujudkan sambungan menggunakan PDO baharu("odbc:..." tidak menghasilkan respons, pelaksanaan tergantung. Bagaimanakah PHP boleh berjaya disambungkan ke pangkalan data MSSQL melalui PDO ODBC?

Jawapan:

Menyambung PHP ke MSSQL melalui PDO ODBC memerlukan konfigurasi yang betul bagi beberapa fail:

Tatarajah Fail:

  • /etc/odbc.ini: Tentukan butiran sambungan, termasuk nama pangkalan data, nama pelayan dan versi TDS.
  • /etc/odbcinst.ini: Tentukan lokasi pemacu TDS Percuma.
  • /etc/freetds/freetds.conf: Tentukan nama sumber data (DSN) dan parameter sambungan (hos, port, versi TDS).

Konfigurasi Khusus:

**[odbc.ini]**
[mssql]
Description             = MSSQL Server
Driver                  = freetds
Database                = XXXXXX
ServerName              = MSSQL
TDS_Version             = 7.1

**[odbcinst.ini]**
[freetds]
Description = MS SQL database access with Free TDS
Driver      = /usr/lib/i386-linux-gnu/odbc/libtdsodbc.so

**[freetds.conf]**
[mssql]
host = XXXXXX
port = 1433
tds version = 7.1

Memulakan semula Kod Apache dan PHP :

Laksanakan perkhidmatan apache2 restart untuk memulakan semula Apache.

Buat objek PDO seperti berikut:

$pdo = new PDO("dblib:host=mssql;dbname=$dbname", "$dbuser","$dbpwd");

Nota:

  • Laraskan versi TDS dalam /etc/freetds /freetds.conf berdasarkan versi MSSQL.
  • Gunakan format domain/nama pengguna untuk nama pengguna jika perlu.
  • Sahkan sambungan berjaya dengan menyemak "freetds" dan bahagian "mssql" dalam phpinfo().

Atas ialah kandungan terperinci Bagaimana untuk Menyambungkan PHP ke MSSQL melalui PDO ODBC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn