首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

sqlsrv_fetch_array

(没有可用的版本信息,可能只在Git中)

sqlsrv_fetch_array - 将一行作为数组返回

描述

代码语言:javascript
复制
array sqlsrv_fetch_array ( resource $stmt [, int $fetchType [, int $row [, int $offset ]]] )

以关联数组或数组数组的形式返回下一个可用的数据行(默认值)。

参数

stmt

由sqlsrv_query或sqlsrv_prepare返回的语句资源。

fetchType

一个预定义的常量,指定要返回的数组的类型。可能的值是SQLSRV_FETCH_ASSOC,,SQLSRV_FETCH_NUMERICSQLSRV_FETCH_BOTH(默认值)。

使用具有多个相同名称列的结果集时,不应使用提取类型的SQLSRV_FETCH_ASSOC。

row

指定要在使用可滚动游标的结果集中访问的行。可能的值是SQLSRV_SCROLL_NEXTSQLSRV_SCROLL_PRIORSQLSRV_SCROLL_FIRSTSQLSRV_SCROLL_LASTSQLSRV_SCROLL_ABSOLUTE和,SQLSRV_SCROLL_RELATIVE(默认值)。当指定此参数时,fetchType必须明确定义。

offset

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

返回值

NULL如果没有更多行要返回,并且FALSE发生错误,则返回成功的数组。

例子

示例#1检索关联数组。

代码语言:javascript
复制
<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
    die( print_r( sqlsrv_errors(), true));
}

$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
    die( print_r( sqlsrv_errors(), true) );
}

while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
      echo $row['LastName'].", ".$row['FirstName']."<br />";
}

sqlsrv_free_stmt( $stmt);
?>

示例#2检索数值数组。

代码语言:javascript
复制
<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
    die( print_r( sqlsrv_errors(), true));
}

$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
    die( print_r( sqlsrv_errors(), true) );
}

while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC) ) {
      echo $row[0].", ".$row[1]."<br />";
}

sqlsrv_free_stmt( $stmt);
?>

笔记

在上面的例子中没有fetchType使用SQLSRV_FETCH_TYPE常量指定或明确将返回一个包含关联键和数字键的数组。

如果多个列以相同名称返回,则最后一列优先。为避免字段名称冲突,请使用别名。

如果返回一个没有名字的列,那么数组元素的关联键将是一个空字符串(“”)。

  • sqlsrv_connect() - Opens a connection to a Microsoft SQL Server database
  • sqlsrv_query() - Prepares and executes a query.
  • sqlsrv_errors() - Returns error and warning information about the last SQLSRV operation performed
  • sqlsrv_fetch() - Makes the next row in a result set available for reading

← sqlsrv_execute

sqlsrv_fetch_object →

扫码关注腾讯云开发者

领取腾讯云代金券