PHP Conference Japan 2024

sqlsrv_fetch

(无版本信息可用,可能仅在Git中)

sqlsrv_fetch使结果集中的下一行可供读取

描述

sqlsrv_fetch(资源 $stmt, 整数 $row = ?, 整数 $offset = ?): 混合

使结果集中的下一行可供读取。使用sqlsrv_get_field()读取该行的字段。

参数

stmt

通过执行sqlsrv_query()sqlsrv_execute()创建的语句资源。

row

要访问的行。只有当指定的语句使用可滚动游标准备时,才能使用此参数。在这种情况下,此参数可以取以下值之一

  • SQLSRV_SCROLL_NEXT
  • SQLSRV_SCROLL_PRIOR
  • SQLSRV_SCROLL_FIRST
  • SQLSRV_SCROLL_LAST
  • SQLSRV_SCROLL_ABSOLUTE
  • SQLSRV_SCROLL_RELATIVE

offset

如果row参数设置为SQLSRV_SCROLL_ABSOLUTESQLSRV_SCROLL_RELATIVE,则指定要访问的行。请注意,结果集中的第一行索引为0。

返回值

如果成功检索到结果集的下一行,则返回true;如果发生错误,则返回false;如果结果集中没有更多行,则返回null

示例

示例 #1 sqlsrv_fetch() 示例

以下示例演示如何使用sqlsrv_fetch()检索一行,并使用sqlsrv_get_field()获取行字段。

<?php
$serverName
= "serverName\sqlexpress";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if(
$conn === false ) {
die(
print_r( sqlsrv_errors(), true));
}

$sql = "SELECT Name, Comment
FROM Table_1
WHERE ReviewID=1"
;
$stmt = sqlsrv_query( $conn, $sql);
if(
$stmt === false ) {
die(
print_r( sqlsrv_errors(), true));
}

// 使结果集的第一行(在本例中也是唯一一行)可供读取。
if( sqlsrv_fetch( $stmt ) === false) {
die(
print_r( sqlsrv_errors(), true));
}

// 获取行字段。字段索引从0开始,必须按顺序检索。
// sqlsrv_get_field不支持按名称检索行字段。
$name = sqlsrv_get_field( $stmt, 0);
echo
"$name: ";

$comment = sqlsrv_get_field( $stmt, 1);
echo
$comment;
?>

参见

添加备注

用户贡献笔记

此页面没有用户贡献的笔记。
To Top