【发布时间】:2014-06-26 20:39:40
【问题描述】:
我有一个 PHP 调用 Oracle 数据库。 问题是当我使用 SQLDeveloper 使用给定的 SQL 查询数据库时,我可以获得正确的结果。 现在我有一个从 XML 读取 SQL 的现有 PHP 应用程序。 其他 SQL 成功返回行,但是当我使用给定的 SQL 时,它没有返回任何行。我的 SQL 中有什么问题不能在 PHP Oracle 中接受吗? 或者是否存在无法查询 Oracle 中的表的情况? 谢谢。
XML 文件中的 SQL:
Select "PROJECT_NAME" From TABLE_A
Where EXISTS (
SELECT "DATA ID", "DATA NAME" FROM TABLE_B
WHERE TABLE_B."DATA LEVEL" = 3
AND TABLE_B."DATA TYPE" = 'TYPEA')
AND TABLE_A.COLUMN1 is null
PHP 代码:
<?php
echo '<br> sql: ' . $report_sql;
$stmt = oci_parse($conn, $report_sql);
oci_execute($stmt, OCI_DEFAULT);
echo '<div style="width:450px;"> <table id="tableBD1" class="display" cellspacing="0" width="100%">';
echo '<thead>
<tr >
<th>Project Name</th>
</tr>
</thead>';
echo '<tbody>';
while ($row=oci_fetch_array($stmt,OCI_BOTH))
{
echo "<tr><td> <a href='#'>". $row['PROJECT_NAME'] . "</a> </td>";
}
echo '</tbody>';
echo '</table> </div>';
oci_free_statement($stmt);
?>
【问题讨论】:
-
$report_sql 在哪里?还是和上面的sql完全一样?我认为可能是语法错误