首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

PHP 連接 SQL Server 函數庫完整參考

     編輯:關於SqlServer

PHP 透過 mssql_ 系列函數操作 Microsoft SQL Server,需在 Windows 平台執行。本文整理核心函數用法與常見操作模式,適合維護舊版 PHP 專案的開發者參考。

環境需求與架構說明

  • SQL Server 來源於 Sybase 代碼庫,採用 T-SQL 語法
  • PHP 必須運行於 Windows NT/2000/XP 等平台
  • 需啟用 php_mssql.dll 擴展(PHP 5.3+ 官方已移除,建議改用 SQLSRV 或 PDO_SQLSRV)

核心函數分類速查

連線管理

函數用途備註
mssql_connect()建立非持久連線回傳連線識別碼
mssql_pconnect()建立持久連線腳本結束不自動關閉
mssql_close()關閉連線僅對 mssql_connect 有效
mssql_select_db()選擇資料庫類似 USE db_name

查詢執行與結果處理

函數用途回傳值
mssql_query()送出 T-SQL 查詢結果集識別碼 / 布林值
mssql_fetch_array()取得關聯+數值陣列單筆記錄陣列
mssql_fetch_assoc()取得關聯陣列單筆記錄陣列
mssql_fetch_row()取得數值索引陣列單筆記錄陣列
mssql_fetch_object()取得物件單筆記錄物件
mssql_num_rows()取得列數整數
mssql_num_fields()取得欄位數整數
mssql_free_result()釋放結果集記憶體布林值

資料指標控制

  • mssql_data_seek():移動列指標
  • mssql_field_seek():移動欄位指標
  • mssql_fetch_field():取得欄位中繼資料

異動操作

  • mssql_affected_rows():取得 INSERT/UPDATE/DELETE 影響列數
  • mssql_result():直接取得單一欄位值

完整範例:查詢並顯示資料

<?php
// 連線
$conn = mssql_connect('localhost', 'sa', 'password') or die('連線失敗');
mssql_select_db('Northwind', $conn) or die('選擇資料庫失敗');

// 查詢
$sql = "SELECT CustomerID, CompanyName, ContactName FROM Customers WHERE Country = 'UK'";
$result = mssql_query($sql, $conn);

if ($result && mssql_num_rows($result) > 0) {
    echo "<table border='1'><tr><th>ID</th><th>公司</th><th>聯絡人</th></tr>";
    while ($row = mssql_fetch_assoc($result)) {
        echo "<tr><td>{$row['CustomerID']}</td><td>{$row['CompanyName']}</td><td>{$row['ContactName']}</td></tr>";
    }
    echo "</table>";
} else {
    echo "無符合資料";
}

// 清理
mssql_free_result($result);
mssql_close($conn);
?>

遷移建議

PHP 7.0+ 專案請改用 Microsoft 官方驅動:

  • sqlsrv_ 系列:程序式 API,效能最佳
  • PDO_SQLSRV:PDO 介面,支援參數綁定、預處理語句
  • 支援 Linux/macOS 容器化部署
  • 內建 Always Encrypted、資料表值參數等新功能
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved