介绍
在开发Web应用程序时,与数据库打交道是必不可少的。其中,PHPMSSQL是PHP连接MSSQL Server的扩展。PHPMSSQL是一种用于建立到Microsoft SQL Server的连接的API。本文将介绍如何在PHP中使用PHPMSSQL实现数据库操作。
安装PHPMSSQL
在使用PHPMSSQL前,需要确保已经安装了Microsoft ODBC Driver for SQL Server。安装过程中,需要选择对应的操作系统和PHP版本。以Windows为例,可以在Microsoft官网下载相应的ODBC Driver for SQL Server。
在安装ODBC Driver for SQL Server之后,需要在php.ini文件中启用PHPMSSQL。在php.ini文件中搜索“extension=php_mssql.dll”,将其前面的注释符“;”去掉即可启用PHPMSSQL。
连接至数据库
在PHP中连接至数据库需要指定服务器、用户名、密码和要连接的数据库名称。在使用PHPMSSQL时,连接至服务器的格式如下所示:
$serverName = "[服务器名称]\[实例名称]";
$connectionInfo = array( "Database"=>"[数据库名称]", "UID"=>"[用户名]", "PWD"=>"[密码]");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
注意:
“$serverName”必须指定为“[服务器名称]\[实例名称]”,如果使用默认实例,则只需指定服务器名称即可。
检查连接状态
在连接数据库之后,需要检查连接状态。可以使用“sqlsrv_errors()”方法来检查错误信息。检查连接是否正常可以使用如下方法:
if( $conn ) {
echo "连接成功.";
}else{
echo "连接失败.";
die( print_r( sqlsrv_errors(), true));
}
查询数据
使用PHPMSSQL查询数据需要执行查询语句,然后从结果集中获取数据。执行查询语句可以使用“sqlsrv_query()”方法,该方法返回结果集。获取数据可以使用“sqlsrv_fetch_array()”方法、 “sqlsrv_fetch_object()”方法或“sqlsrv_fetch_assoc()”方法。
查询数据的例子
以下是使用PHPMSSQL查询数据的示例:
$query = "SELECT * FROM [表名]";
$result = sqlsrv_query( $conn, $query);
if( $result === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $result, SQLSRV_FETCH_ASSOC) ) {
echo $row['列名称']."
";
}
sqlsrv_free_stmt( $result);
注意:
在使用“sqlsrv_fetch_array()”方法、 “sqlsrv_fetch_object()”方法或“sqlsrv_fetch_assoc()”方法之间,需要使用“sqlsrv_free_stmt()”释放结果集。
插入数据
使用PHPMSSQL插入数据需要使用“sqlsrv_query()”方法和“INSERT INTO”语句。执行插入语句后,可以使用“sqlsrv_rows_affected()”方法获取受影响的行数。以下是插入数据的代码实现:
$query = "INSERT INTO myTable ([列名1], [列名2], [列名3]) VALUES (?, ?, ?)";
$params = array($value1, $value2, $value3);
$stmt = sqlsrv_query($conn, $query, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true) );
}
$row_count = sqlsrv_rows_affected( $stmt);
if ($row_count === false)
echo "错误.";
else
echo "受影响的行数为: $row_count";
注意:
需要将变量传递到“sqlsrv_query()”方法中。可以使用“?”替代变量,然后在$params数组中传递变量值。
更新数据
使用PHPMSSQL更新数据需要使用“sqlsrv_query()”方法和“UPDATE”语句。执行更新语句后,可以使用“sqlsrv_rows_affected()”方法获取受影响的行数。以下是更新数据的代码实现:
$query = "UPDATE myTable SET [列名1] = ? WHERE [列名2] = ?";
$params = array($value1, $value2);
$stmt = sqlsrv_query($conn, $query, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true) );
}
$row_count = sqlsrv_rows_affected( $stmt);
if ($row_count === false)
echo "错误.";
else
echo "受影响的行数为: $row_count";
注意:
需要将变量传递到“sqlsrv_query()”方法中。可以使用“?”替代变量,然后在$params数组中传递变量值。
删除数据
使用PHPMSSQL删除数据需要使用“sqlsrv_query()”方法和“DELETE FROM”语句。执行删除语句后,可以使用“sqlsrv_rows_affected()”方法获取受影响的行数。以下是删除数据的代码实现:
$query = "DELETE FROM myTable WHERE [列名] = ?";
$params = array($value);
$stmt = sqlsrv_query($conn, $query, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true) );
}
$row_count = sqlsrv_rows_affected( $stmt);
if ($row_count === false)
echo "错误.";
else
echo "受影响的行数为: $row_count";
注意:
需要将变量传递到“sqlsrv_query()”方法中。可以使用“?”替代变量,然后在$params数组中传递变量值。
关闭连接
在完成数据库操作之后,需要关闭连接。可以使用“sqlsrv_close()”方法关闭连接。以下是关闭连接的代码实现:
sqlsrv_close($conn);
总结
使用PHPMSSQL可以轻松地连接到Microsoft SQL Server并执行数据库操作。本文已经介绍了如何安装PHPMSSQL、连接至数据库、查询数据、插入数据、更新数据、删除数据和关闭连接。