函数名称:sqlsrv_prepare()
函数描述:sqlsrv_prepare() 函数准备一个 SQL 语句,以便后续执行。
适用版本:该函数适用于 PHP 5.2 及以上版本。
用法:
sqlsrv_prepare( resource $conn, string $sql, array $params = array(), array $options = array() ): ?\Sqlsrv\Statement
参数:
- $conn:必需,表示与 SQL Server 数据库的连接。
- $sql:必需,表示要准备的 SQL 语句。
- $params:可选,表示绑定到 SQL 语句中的参数数组,默认为空数组。
- $options:可选,表示一个关联数组,用于指定其他选项,默认为空数组。
返回值:
- 如果成功,返回一个 Sqlsrv\Statement 对象。
- 如果失败,返回 false。
示例:
$serverName = "localhost";
$connectionOptions = array(
"Database" => "mydb",
"Uid" => "username",
"PWD" => "password"
);
// 建立与 SQL Server 数据库的连接
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn === false) {
die(print_r(sqlsrv_errors(), true));
}
// 准备 SQL 语句
$sql = "SELECT * FROM my_table WHERE id = ?";
$param = array(123); // 绑定参数
$stmt = sqlsrv_prepare($conn, $sql, $param);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
// 执行准备好的 SQL 语句
if (sqlsrv_execute($stmt) === false) {
die(print_r(sqlsrv_errors(), true));
}
// 处理结果集
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo $row['column_name'] . "<br>";
}
// 释放资源
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
以上示例中,我们首先建立与 SQL Server 数据库的连接,然后准备一个 SQL 语句,其中包含一个参数。接着,我们使用 sqlsrv_prepare() 函数来准备 SQL 语句,并将参数绑定到 SQL 语句中。如果准备成功,我们可以通过 sqlsrv_execute() 函数执行准备好的 SQL 语句,并使用 sqlsrv_fetch_array() 函数处理结果集。最后,我们释放资源并关闭与数据库的连接。
请注意,示例中的连接选项、SQL 语句和参数仅供参考,您需要根据实际情况进行相应的修改。