как обновить LOB с помощью PHP в oracle? (OCI_INVALID_HANDLE)

Я пытаюсь сделать обновление (C) LOB таким же образом, как и вставка. (вставка уже работает).

$queryHandle = oci_parse($dbHandle, "update MYTABLE set "MYCLOB" = EMPTY_CLOB() , "OTHERCOL" = :col0 where "PKIDCOL" = :wherecol0 returning "OTHERCOL" , "MYCLOB", into :retcol0 , :retcol1"); if(!is_resource($queryHandle)) { $error=oci_error($dbHandle); die($error['message'], $error['code']); } oci_bind_by_name($queryHandle, ":col0", $othercolvalue); oci_bind_by_name($queryHandle, ":wherecol0", $pkidcol); oci_bind_by_name($queryHandle, ":retcol0", $retcol1, 100); $lob=oci_new_descriptor($dbHandle); oci_bind_by_name($queryHandle, ":retcol1", $lob, -1, SQLT_CLOB); if(!oci_execute($queryHandle , OCI_NO_AUTO_COMMIT)) { $error=oci_error($dbHandle); die($error['message'], $error['code']); } $lob->save($mylobvalue); // gives an PHP Warning: OCI-Lob::save(): OCI_INVALID_HANDLE in file.php on line 123 

это не обновляет lob и дает: PHP Warning: OCI-Lob::save(): OCI_INVALID_HANDLE in file.php on line 123

    Существуют десятки примеров того, как вставлять / обновлять строку со значением LOB .

    Прежде всего, вам нужно создать дескриптор LOB :

     $desc = oci_new_descriptor($connection, OCI_DTYPE_LOB); 

    Затем используйте этот дескриптор в качестве значения привязки для LOB заполнителя:

     oci_bind_by_name($queryHandle, ":retcol1", $desc, -1, SQLT_CLOB); 

    Затем временные записи данных:

     $desc->writeTemporary($data); 

    А после этого выполните этот запрос …

    Более подробную информацию можно найти в документации + внимательно прочитайте все комментарии для получения дополнительных примеров!

    В некоторых примерах используется $desc->write($data); + execute + commit, некоторые используют execute + $desc->saveFile($data); + commit, все должно работать.

    Как сказал PLB: запрос обновления не обновлял строки из-за неправильного значения первичного ключа. Это привело к сообщению об ошибке php.

    http://www.oracle.com/technetwork/articles/fuecks-lobs-095315.html