PHP update

ilich

Новичок
PHP update

Доброго времени суток!
Заранее извиняюсь за ламерский вопрос.
Проблема такая - Есть база Oracle 9 и есть услуга. Если услуга используется в базе ставится блокировка и услуга использоваться, пока есть эта блокировка, не может. Ну это защита от использования услуги сразу несколькими пользователями... В результате некоторых сбоев в работе системы (не базы), блокировка не снимается и услуга вообще становится не доступной. Исправить проблему системы не представляется возможным и поэтому блокировку необходимо снимать руками.
Для этого в базу посылаем запрос вида: update db set lock = 'N' where usluga_id = №_uslugi

Собственно хочется снять с себя эту работу и отдать пользователям которые ничего не смыслят в SQL. Для этого пищу скрипт с дружелюбным интерфейсом и без возможности накосячить.
Соединение с базой есть, SELECT выполняется, только вот ни как не пойму как послать Oracle UPDATE...

Делаю вот так - не фурычет:
PHP:
 if($action == "unlock")
 {
 $sql = "update db set lock = 'N' where usluga_id = $id";
  
  
 $stmt = OCIParse($conn,$sql);
  
 OCIExecute($stmt,OCI_DEFAULT); 
  
 }
Ошибку никакую не выдает, но и в базе обновления не происходит.
Подскажите пожалуйста, как правильно выполнить этот запрос. Буду примного благодарен!!!
 

Falc

Новичок
Если используешь OCI_DEFAULT, то то нужно сделать oci_commit.
 

ilich

Новичок
Всё гениальное просто!!!
"OCIExecute() выполняет ранее разобранный оператор (см. OCIParse()). Необязательный mode позволяет специфицировать режим выполнения/execution-mode (по умолчанию это OCI_COMMIT_ON_SUCCESS). Если вам НЕ(!!!) нужно автоматическое подтверждение операторов, специфицируйте в качестве режима OCI_DEFAULT."
Вот бы мне сразу вчитаться в это предложение...
Спасибо!!!
 
Сверху