Oci выполнить заблокирован на обновление BLOB-объектов - PullRequest
0 голосов
/ 11 марта 2019

Выполнение Oci заблокировано при обновлении BLOB-объекта

Я пытаюсь обновить столбец BLOB-объекта, вставляя в него данные изображения

I ', используя код, подобный следующему (проверка ошибок опущена дляясность):

$ myquery = "ОБНОВЛЕНИЕ изображения SET SET picture = EMPTY_BLOB () WHERE imageid = $ imageid возвращаемое изображение в: tempblob";

$ Остаток = ociparse ($ db_identifier, $$ myquery);

$ lob = OCINewDescriptor ($ db_identifier, OCI_D_LOB);

OCIBindByName ($ Остаток, ': tempblob', $ Лоб, -1, OCI_B_BLOB);

OCIExecute ($ Остаток, OCI_NO_AUTO_COMMIT);// пробовал также OCI_DEFAULT

$ lob-> save ($ this -> _ picture);

sql_tcommit ($ this-> dbId, $ this-> dbType);

$ lob-> close ();

Проблема возникает, если я пытаюсь повторить второй раз вышеупомянутые инструкции, используя ту же запись ($ imageid) (иногда я мог повторить операцию,не спрашивайте почему ... ;-))

В этом случае программа заблокирована в операторе OCIExecure, и мне нужно его убить.

Блокировка не происходит, есливторой раз я использую другой imageid

Любое предложение?

Maurizio.

...