为什么我的php代码识别我的Oracle数据库中的零实体是身份不明的索引



我有一个简单的PHP编码,该编码从我的Oracle数据库中的特定表中获取数据。它在从PHP表单上的表中输出数据方面工作正常,但是我注意到的一件事是我的error_reporting函数调用了几个相同的错误,表明表中存在未知索引。

我的代码:

<?php
include("ConnectionCode.php");
error_reporting(E_ALL);
$sql = 'SELECT * FROM ROVER';
$stid = oci_parse($conn, $sql);
oci_execute($stid);
echo "<table border='1'>";
echo "<tr> <th>Rover ID</th> <th>Rover Name</th> <th>Launch_Date</th> 
<th>Arrival_Date</th> <th>Manufacturer</th> </tr>";

while($row= oci_fetch_array($stid, OCI_ASSOC))
{
echo "<tr>";
echo "<td>" . $row ['ROVER_ID'] . "</td>";
echo "<td>" . $row ['ROVER_NAME'] . "</td>";
echo "<td>" . $row ['LAUNCH_DATE'] . "</td>";
echo "<td>" . $row ['ARRIVAL_DATE'] . "</td>";
echo "<td>" . $row ['MANUFACTURER'] . "</td>";
echo "</tr>";
}
echo "</table>";
oci_free_statement($stid);
oci_close($conn);
?>

我做出了逻辑上的假设,即这些索引是由于表的某些字段中存在的零值引起的。但是我的问题主要是这样,在代码中我可以做任何解决此问题的方法吗?还是真的不是问题?

手册提到:

mode:可选的第二个参数可以是任何组合 以下常数:

[...]
OCI_RETURN_NULLS:为NULL字段创建元素。这 元素值将是PHP NULL

我对OCI接口并不熟悉,但是这里的含义似乎是,默认情况下省略了NULL字段,但是您可以通过明确设置该标志来返回它们:

while ($row = oci_fetch_array($stid, OCI_ASSOC + OCI_RETURN_NULLS))

相关内容

最新更新