我有以下代码......
$interactionid = '123';
$interactioncode = "ECWL";
$oldDOL = $_GET['oldDOL'];
$newDOL = $_GET['newDOL'];
include("ORCLconfig.php");
$addWSclaim = oci_parse($conn, "UPDATE claims SET DATE_OF_LOSS='$newDOL' WHERE NUMBER='32122'");
oci_execute($addWSclaim, OCI_COMMIT_ON_SUCCESS);
$addtointeractionMAKE = oci_parse($conn, "INSERT INTO interaction_items VALUES (null, '$interactionid', '$interactioncode', '$oldDOL', '$newDOL', localtimestamp)");
oci_execute($addtointeractionMAKE, OCI_COMMIT_ON_SUCCESS);
oldDOL和newDOL是以DD-MMM-YY格式到达的日期,它与声明表中的DATE_OF_LOSS列一致。
然而,只有第二个陈述似乎有效,因为索赔表没有变化,也没有显示任何错误。
我正在使用Oracle数据库,如果我在SQL控制台中执行update语句,它可以正常工作。
了解我这将是一件非常简单的事情,我不知何故忽略了,但任何帮助都会受到赞赏:)
答案 0 :(得分:1)
尝试
$addWSclaim = oci_parse($conn, "UPDATE claims SET DATE_OF_LOSS='$newDOL' WHERE NUMBER='32122'");
if ($addWSclaim) {
if (oci_execute($addWSclaim, OCI_COMMIT_ON_SUCCESS)) {
if (oci_num_rows($addWSclaim) === 0) {
/* No rows affected */
}
} else {
/*Handle error through oci_error*/
}
} else {
/* Handle parse error */
}
oci_execute成功时返回TRUE,失败时返回FALSE。