【发布时间】:2020-04-15 17:35:44
【问题描述】:
我试图在从表中删除数据后执行插入命令,但它给了我一个错误。我正在做 ACID 交易。
<?php
require ( 'conn.conf' );
if ($querydb){
try {
//$querydb->beginTransaction();
$deleteSQL = "delete from THIRD_PARTY_MON";
$insertSQL = "insert into THIRD_PARTY_MON( select param1, param2 from database@dblink )";
$parse = oci_parse( $querydb, $deleteSQL );
oci_execute( $parse, OCI_NO_AUTO_COMMIT );
$parse = oci_parse( $querydb, $insertSQL );
oci_execute( $parse , OCI_COMMIT_ON_SUCCESS );
//oci_commit( $querydb );
} catch (exception $e){
oci_rollback( $querydb );
}
}
?>
PHP 警告:oci_execute(): ORA-02019: 连接描述 在第 16 行的 C:\mon_scripts\third_party.php 中找不到远程数据库
警告:oci_execute(): ORA-02019: 远程连接描述 在第 16 行的 C:\mon_scripts\third_party.php 中找不到数据库
如果我运行选择查询,在收到此错误后,表 THIRD_PARTY_MON 为空,因此没有插入任何内容。
我在这里做错了什么?
【问题讨论】:
-
你在使用数据库链接吗
-
是的 db 链接正在插入查询中使用
-
检查这个 SO 问题是否有帮助 stackoverflow.com/questions/39270446/…