函数名:sqlsrv_query()
适用版本:PHP 5.2.0及以上版本
用法:sqlsrv_query() 函数用于在 SQL Server 数据库上执行一条查询语句或存储过程,并返回一个结果集对象。该函数是 SQLSRV 驱动程序提供的,用于与 SQL Server 进行交互。
语法:sqlsrv_query ( resource $conn , string $sql [, array $params [, array $options ]] ) : mixed
参数:
- $conn:必需,表示与数据库的连接资源。
- $sql:必需,表示要执行的 SQL 查询语句或存储过程。
- $params:可选,表示查询参数的数组。每个参数都是一个关联数组,包含 "Name" 和 "Value" 键。用于防止 SQL 注入攻击。
- $options:可选,表示一个关联数组,用于指定查询选项。
返回值:
- 如果查询执行成功,则返回一个结果集对象(resource)。
- 如果查询执行失败,则返回 FALSE。
示例:
// 连接到 SQL Server 数据库
$serverName = "serverName\sqlexpress";
$connectionOptions = array(
"Database" => "dbName",
"Uid" => "username",
"PWD" => "password"
);
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn === false) {
die(print_r(sqlsrv_errors(), true));
}
// 执行查询语句
$sql = "SELECT * FROM users";
$result = sqlsrv_query($conn, $sql);
if ($result === false) {
die(print_r(sqlsrv_errors(), true));
}
// 处理结果集
while ($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC)) {
echo "ID: " . $row['id'] . ", Name: " . $row['name'] . "<br>";
}
// 释放结果集和关闭连接
sqlsrv_free_stmt($result);
sqlsrv_close($conn);
以上示例演示了如何使用 sqlsrv_query() 函数连接到 SQL Server 数据库,并执行一条简单的查询语句。然后,通过循环遍历结果集,输出每个用户的 ID 和姓名。最后,使用 sqlsrv_free_stmt() 函数释放结果集,并使用 sqlsrv_close() 函数关闭连接。
请注意,示例中的连接参数和查询语句仅供参考,您需要根据实际情况进行修改。