1. 介绍 MSSQL 拓展
MSSQL 拓展是一种可以扩展 Microsoft SQL Server 数据库的工具。这个工具提供了很多有用的功能,例如连接池、数据访问优化、批处理处理、Xml 数据类型支持等。它是以 C 语言写成的,可以在 PHP 中方便地使用。
2. 安装 MSSQL 拓展
2.1 在 Linux 环境下安装
在 Linux 环境下安装 MSSQL 拓展,可以使用 PECL 来完成:
pecl install sqlsrv pdo_sqlsrv
安装完成后,需要在 php.ini 文件中添加以下两行配置:
extension=sqlsrv.so
extension=pdo_sqlsrv.so
重启 PHP-FPM 后,就可以在 PHP 中使用 MSSQL 拓展了。
2.2 在 Windows 环境下安装
在 Windows 环境下安装 MSSQL 拓展,需要下载相应的 dll 文件,并将其放到 PHP 的 ext 目录下,并在 php.ini 文件中添加以下两行配置:
extension=php_sqlsrv_XXX.dll
extension=php_pdo_sqlsrv_XXX.dll
其中,XXX 表示 PHP 的版本号。
3. 使用 MSSQL 拓展
3.1 建立数据库连接
使用 MSSQL 拓展建立数据库连接时,需要使用 sqlsrv_connect 函数,例如:
$serverName = "localhost\SQLEXPRESS";
$connectionOptions = array("Database"=>"myDatabase", "Uid"=>"myUserName", "PWD"=>"myPassword");
$conn = sqlsrv_connect($serverName, $connectionOptions);
其中,$serverName 表示 SQL Server 的名称,$connectionOptions 是连接参数数组,可以指定数据库名称、用户名和密码等信息。
3.2 查询数据
使用 MSSQL 拓展查询数据时,可以使用 sqlsrv_query 函数,例如:
$sql = "SELECT * FROM myTable WHERE id = ?";
$params = array(1);
$stmt = sqlsrv_query($conn, $sql, $params);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo "id: ".$row["id"].", name: ".$row["name"]."<br />";
}
其中,$sql 是 SQL 语句,$params 是参数数组,sqlsrv_query 函数会返回一个语句句柄 $stmt,通过 sqlsrv_fetch_array 函数可以获取数据行。
3.3 插入数据
使用 MSSQL 拓展插入数据时,可以使用 sqlsrv_prepare 和 sqlsrv_execute 函数,例如:
$sql = "INSERT INTO myTable (id, name) VALUES (?, ?)";
$params = array(1, "John");
$stmt = sqlsrv_prepare($conn, $sql, $params);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
if (sqlsrv_execute($stmt) === false) {
die(print_r(sqlsrv_errors(), true));
}
其中,$sql 是 SQL 语句,$params 是参数数组,sqlsrv_prepare 函数会返回一个语句句柄 $stmt,通过 sqlsrv_execute 函数可以执行插入操作。
4. 总结
MSSQL 拓展是一个非常实用的工具,可以方便地连接 Microsoft SQL Server 数据库,并提供了很多有用的功能。其中,sqlsrv_query、sqlsrv_prepare 和 sqlsrv_execute 函数是开发中最常使用的函数,掌握了这些函数的使用方法,就可以轻松地进行开发。