0

OCI8ライブラリを介してOracleデータベースに書き込むPHPコードがいくつかあります。プログラムで実行されない挿入ステートメントがあります-ステートメントを印刷してSquirrelSQLを介して実行すると、データが正常に挿入されます。完全に機能するコードの他の場所に delete および select ステートメントがあります。何が問題になる可能性がありますか? そして、私が言ったように、 $om_query を印刷して手動で実行すると、正常に挿入されます。他のエラーは発生しません。

$om_query = "INSERT INTO DB.TABLE(R1,R2) VALUES(V1,V2)";
$s2 = oci_parse($conn, $om_query);
$qs = oci_execute($s2);
oci_commit ($conn); 

if(!$qs){
    $ma = oci_error();
    $failedqueries .= '<br /><br />MAINQ: ' . $om_query . '<br /><b>OCI_ERROR_MSG: </b>' . $ma['message'];
}

oci_error()有用なものは何も追加しません。

4

1 に答える 1

-2

影響を受けるテーブルに開いているトランザクションがないことを確認してください。PL が挿入されたレコードを削除しようとしている可能性があります。

Oracle では、データを変更した後 (挿入、更新、または削除のいずれか)、COMMIT または ROLLBACK 操作を実行する必要があります。

于 2015-03-18T18:49:24.617 に答える