ODBC PHP / Oracle - UPDATE, INSERT, DELETE


Я в проекте с помощью PHP и Oracle. соединение-ОК, с этим кодом я могу запустить каждый выбирает, что мне нужно, как правило, то, что я не могу выполнить INSERTS, UPDATES DELETE.

Кто-нибудь знал бы сказать мне, почему?

<?php
require_once('connection.php');
if($conn)
{
   $Query = "UPDATE PQAQ SET CAMINHO_ARQUIVO = 'PDF' WHERE CODIGO_PROCESSO = 18 AND CAMINHO_ARQUIVO = 'TESTE.PHP'";
   odbc_exec($conn, $Query);
}
?>
Author: rray, 2016-12-20

1 answers

Некоторые банки работают с trasação в двух делаешь по умолчанию. В случае изменения (insert/update/delete) выполняется она не помещается в "практике", в час, находится в состоянии ожидания до фиксации.

Есть два способа решить эту проблему. Первый это отправить commit вручную с ролью odbc_commit().

$Query = "UPDATE PQAQ SET CAMINHO_ARQUIVO = 'PDF' 
          WHERE CODIGO_PROCESSO = 18 AND CAMINHO_ARQUIVO = 'TESTE.PHP'";
odbc_exec($conn, $Query);

if(!odbc_commit($conn)){
    echo 'erro: '. odbc_errormsg($conn);
}

Второй оставить odbc работать в автоматической фиксации по умолчанию, функция odbc_autocommit() делает это оставляет ваш звонок сразу после создание подключения.

odbc_autocommit($conn, true);
 2
Author: rray, 2016-12-20 18:27:38