oci_fetch
(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)
oci_fetch — 从查询中读取下一行到内部缓冲区
说明
从查询中读取下一行到内部缓冲区,可以使用 oci_result() 访问,也可以使用之前用 oci_define_by_name() 定义的变量访问。
有关读取数据的通用信息,请参阅 oci_fetch_array()。
示例
示例 #1 oci_fetch() 与已定义的变量
<?php
$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);
// The defines MUST be done before executing
oci_define_by_name($stid, 'LOCATION_ID', $locid);
oci_define_by_name($stid, 'CITY', $city);
oci_execute($stid);
// Each fetch populates the previously defined variables with the next row's data
while (oci_fetch($stid)) {
echo "Location id $locid is $city<br>\n";
}
// Displays:
// Location id 1000 is Roma
// Location id 1100 is Venice
oci_free_statement($stid);
oci_close($conn);
?>
示例 #2 oci_fetch() 和 oci_result()
<?php
$conn = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
$sql = 'SELECT location_id, city FROM locations WHERE location_id < 1200';
$stid = oci_parse($conn, $sql);
oci_execute($stid);
while (oci_fetch($stid)) {
echo oci_result($stid, 'LOCATION_ID') . " is ";
echo oci_result($stid, 'CITY') . "<br>\n";
}
// Displays:
// 1000 is Roma
// 1100 is Venice
oci_free_statement($stid);
oci_close($conn);
?>
注释
注意:
不会从 Oracle 数据库隐式结果集中返回行。请改用 oci_fetch_array()。
参见
- oci_define_by_name() - 将 PHP 变量与查询读取的列相关联
- oci_fetch_all() - 从查询中读取多行到二维数组中
- oci_fetch_array() - Returns the next row from a query as an associative or numeric array
- oci_fetch_assoc() - Returns the next row from a query as an associative array
- oci_fetch_object() - Returns the next row from a query as an object
- oci_fetch_row() - Returns the next row from a query as a numeric array
- oci_result() - 返回所取得行中字段的值
+添加备注
用户贡献的备注
此页面尚无用户贡献的备注。