PHP 连接 SQL Server 2005 配置指南与代码示例

慢慢来
慢慢来
发布时间:2026-10-15 | 3人浏览过
原创

在使用传统 LAMP/WAMP 架构对接遗留系统时,经常需要将 PHP 环境连接至 SQL Server 2005。由于官方不再维护旧版驱动,需手动配置 php_mssql 扩展并替换关键 DLL 文件以解决版本兼容问题。

结果或目标

成功在 PHP 环境中建立与 SQL Server 2005 的连接,并能执行基本的查询操作(如 mssql_select_db、mssql_query)。

准备条件

  • 已安装 PHP 环境(如 AppServ 或 WampServer,路径以 X:\AppServ\php5 为例)。

  • 核心补丁文件:下载正确版本的 ntwdblib.dll (2000.80.194.0)。此版本是连接 SQL Server 2005 的关键,切勿使用其他版本的 DLL。

  • 权限说明:操作涉及将文件复制到系统目录和 PHP 目录,可能需要管理员权限。

真实操作顺序

第1步:配置 php.ini 启用 MSSQL 扩展

目的:开启 PHP 对 SQL Server 的基础支持功能。

动作:

  1. 打开 php.ini 配置文件。
  2. 找到 extension=php_mssql.dll,去掉前面的分号 ; 注释符。
  3. 找到 mssql.secure_connection = Off,将其修改为 mssql.secure_connection = On。这一步对于连接较新的 SQL Server 2005 至关重要。
  4. 保存文件。

第2步:替换与部署 DLL 文件

目的:提供兼容 SQL Server 2005 协议的底层库文件。

注意:必须先停止 Web 服务器(Apache/Nginx),再替换文件以避免占用锁定。

动作:

  1. 部署主扩展 DLL:进入你的 PHP 扩展目录(例如 X:\AppServ\php5\ext),将 php_mssql.dll 复制一份到系统目录 C:\Windows\System32(如果是 64 位系统且运行 32 位 Apache,则可能需放入 C:\Windows\SysWOW64,此处以常见的 32 位环境或通用描述为主)。
  2. 部署协议 DLL:将上一步下载的 ntwdblib.dll (2000.80.194.0) 分别复制到以下两个位置:
    • 系统目录:C:\Windows\System32
    • PHP 根目录:X:\AppServ\php5

完成上述文件的复制后,确保没有重复的冲突文件名覆盖导致的问题。

第3步:重启 Web 服务

动作:完全重启 Apache 服务(不仅仅是重新加载),使 PHP 重新读取 php.ini 并加载新的 DLL 依赖。

完成判断:创建一个新的 PHP 文件输入 ,在输出的页面中搜索 mssql,如果看到对应的配置信息区块,说明模块已成功加载。

代码示例

以下是一个简单的连接及数据读取示例。请注意,生产环境中请避免使用明文密码,并建议将 IP 地址参数化。

<?php
// 1. 建立连接
// 参数依次为:主机(包含端口), 用户名, 密码
$conn = mssql_connect('127.0.0.1,1468', 'sa', 'your_password');

if (!$conn) {
    die('无法连接到数据库: ' . mssql_get_last_message());
}

// 2. 选择数据库
mssql_select_db('HR', $conn);

// 3. 执行查询
$Query = "SELECT * FROM Class";
$Result = mssql_query($Query);

// 4. 获取数据行数并循环输出
$Number = mssql_num_rows($Result);
for ($i = 0; $i < $Number; $i++) {
    $Row = mssql_fetch_array($Result);
    // 假设第二列是我们要显示的内容
    echo ($Row[1]) . "<br/>";
}

// 5. 关闭连接
mssql_close($conn);
?>

简要总结

PHP 连接 SQL Server 2005 的核心在于“双 DLL”策略:一个是 PHP 的扩展接口 php_mssql.dll,另一个是网络协议的兼容库 ntwdblib.dll(必须指定 2000.80.194.0 版本)。配置完成后,即可像使用 MySQL 一样调用 mssql_* 系列函数。

以上就是 PHP 连接 SQL Server 2005 的详细配置步骤与代码示例,更多关于 PHP 数据库操作及兼容性技巧的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表