gpt4 book ai didi

php - 错误处理PHP Oracle数据库

转载 作者:行者123 更新时间:2023-12-03 07:54:03 24 4
gpt4 key购买 nike

我试图使用Oracle和PHP来实现一些错误处理。如果我尝试将语句插入到已经存在PK的DB表中,则不会执行INSERT-却返回已添加数据的信息-实际并非如此时-需要有关错误处理的帮助

require('connection.inc');
require('connection_db.inc');
$conn = db_connect();

$sql = oci_parse($conn,"INSERT INTO Schema.TableA (DOE, Trips) VALUES (:doe, :trp)");

oci_bind_by_name($sql, ':doe', $f1);
oci_bind_by_name($sql, ':trp', $f2);

oci_execute($sql);

<?
if($sql)
{
echo("Input data has been added<br><br>");
echo("<a href='link1.php'>View Links</a>");
}
else
{
echo("Input data has failed");
echo "</div>";
}

?>

最佳答案

您正在评估语句标识符$sql,而不是oci_execute调用的结果...

如果成功,oci_execute将返回true,如果查询失败,则返回false。参见http://php.net/manual/en/function.oci-execute.php

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, 'SELECT * FROM employees');
$result = oci_execute($stid);

if(true === $result){
// Query successfully executed
echo "Hooary";
} else {
// Something went wrong
$e = oci_error($stid);
echo "Error: " . $e['message'];
}

小提示,从您发布的代码来看,您似乎正在学习php,如果您想拥有一种更安全,更轻松的与数据库进行交互的方式,我想请教一下PDO。有一个PDO可用的oci驱动程序。

http://php.net/manual/en/book.pdo.php
http://php.net/manual/en/ref.pdo-oci.php

关于php - 错误处理PHP Oracle数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34643873/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com