【发布时间】:2018-05-14 17:27:28
【问题描述】:
我遇到了一个非常奇怪的问题。我有一个安装了 PHP 7.0.22 和 PDO_OCI 扩展的 Linux 服务器。此服务器用于接收 SOAP 请求然后查询 ORACLE 数据库(11g - 不幸的是,我没有日志访问权限)的 API。
我已经在这里运行了一段时间的一些服务,所有的选择和更新语句。我所有的查询都使用准备好的语句、事务和回滚。到目前为止,一切都很好。奇怪的是我无法从 PHP 运行 INSERT 语句。它给了我错误ORA-00933: SQL command not properly ended。起初我以为我没有正确使用准备好的语句,所以我手动编写了 SQL 并尝试从 PHP 运行它,它给了我同样的错误。我尝试从一万亿种不同的方式进行调试,但我似乎无法从那里插入它。我什至转储了生成的 SQL,转到我的 SQL 客户端并运行它,它正确插入了数据(以排除 sql 语法问题)。
任何人都可以在这里解释一下吗?我的查询很简单,比如INSERT INTO table (field1, field2) VALUES (value1, value2);
【问题讨论】:
-
如果
database不是您的表名,请尝试使用INSERT INTO table_name (field1, field2) VALUES (value1, value2); -
@urfusion 是的,是一个错字。它是 table_name。
-
有些输入法不喜欢末尾的分号。尝试删除它,看看是否有任何变化
-
@Kudu2 就是这样,它不喜欢最后的分号。谢谢!
标签: php oracle pdo sql-insert