oracle php ORA-00911 недопустимый символ при ОБНОВЛЕНИИ


Я запускаю PHP-скрипт, который обновляет таблицу из базы данных Oracle. Сначала я получаю объект с 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-выполнить]: ORA-00911: недопустимый символ

Я провел некоторый поиск по этому коду ошибки, но не смог исправить его с помощью найденной информации

Любые предложения будут с благодарностью приняты

Author: OMG Ponies, 2010-08-19

1 answers

Точка с запятой в конце инструкции SQL не требуется.

Он используется SQL*Plus и большинством других инструментов для указания "Я закончил писать инструкцию, теперь идите и выполните ее"

 14
Author: Gary Myers, 2010-08-19 23:11:40