Php 如何处理select from dual中的分号;
我的任务是编写一个简单的php+oracle web报告工具,我碰巧遇到了一个非常复杂的查询,它在SQL Developer中非常有效:Php 如何处理select from dual中的分号;,php,sql,oracle,Php,Sql,Oracle,我的任务是编写一个简单的php+oracle web报告工具,我碰巧遇到了一个非常复杂的查询,它在SQL Developer中非常有效: SELECT 'LASTNAME, FIRSTNAME, STATUS' from dual; with user as ( ... .. .. .. (very long query) 然后它给了我这个: PHP Warning: oci_execute(): ORA-00911: invalid character 根据我的初步调查,PHP似乎
SELECT 'LASTNAME, FIRSTNAME, STATUS' from dual;
with user as
(
...
..
..
..
(very long query)
然后它给了我这个:
PHP Warning: oci_execute(): ORA-00911: invalid character
根据我的初步调查,PHP似乎在抱怨“;”在第一行之后(上面写着从…双选择;)
在PHP方面,它如下所示:
$stid = oci_parse($conn, $query);
oci_execute($stid);
其中$query是非常长的查询:
$query = "SELECT 'LASTNAME, FIRSTNAME, STATUS' from dual;
with user as
(
...
..
..
..
我想知道是否有一种方法可以重写整个查询而不使用“dual”部分?dual table是一个具有单行、单列的虚拟表,只有数据是X
您可以创建自己的双表,它只是一个虚拟表。可能需要将结果重复两次,然后创建一个包含两行的dual2表。内容无关紧要。请了解如何转义
”
@DanAndrews-我更新了我的问题,应该是$query=“选择..dual代码>您的表名是???或者您尝试运行两个查询?它不是-它是一个库存/虚拟Oracle表显然,第一行显示select。。。来自双重是什么打破了它。进一步的研究(内部和通过谷歌)让我得出结论,我可能根本不需要这一行,可以自己重写标题。帮助我发现/了解WITH子句的链接: