5

我正在运行从 Oracle 数据库实例更新表的 PHP 脚本。

首先,我收到一个带有 JSON 的对象:

[{
  "lot": "KLMHA17N9N00",
  "requestor": "B10078",
  "id": "FRESHLOT",
  "username": "B26696",
  "password": "B26696"
}, {
  "lot": "KLMHA17R1800",
  "requestor": "B10078",
  "id": "FRESHLOT"
}]

(众所周知,这个 JSON 没有问题,因为我在其他项目中一直在使用它。)

然后,在将结果解析为 $rmrid 对象后创建查询:

$db_query = "update ao_lots 
                 set RMRID='".$rmrid->requestor."-".$rmrid->id."' 
               where ALOT_NUMBER='".$rmrid->lot."';";

如果我回显查询,我会得到:

update ao_lots 
   set RMRID='B10078-FRESHLOT' 
 where ALOT_NUMBER='KLMHA17N9N00';

我在这里没有看到任何问题,但是当我执行查询时,我收到了这个警告并且没有任何更新:

警告:oci_execute() [function.oci-execute]:ORA-00911:无效字符

我对该错误代码进行了一些搜索,但我无法用我找到的信息修复它。

任何建议将不胜感激。

4

1 回答 1

15

SQL 语句末尾不需要分号。

SQL*Plus 和大多数其他工具使用它来指示“我已经完成了语句的编写,现在去执行它”

于 2010-08-19T23:11:40.500 回答