我正在使用 CodeIgniter,并且必须修改 SP 调用
这正在工作
$this->DBTEST = $this->load->database("oracletest", TRUE);
try {
$params = array(
array('name' => 'P_DNI', 'value' => $param_dni, 'type' => SQLT_CHR, 'length' => -1)
);
$stmt = oci_parse($this->DBTEST->conn_id, "BEGIN MYPROC(:P_DNI); END;");
foreach ($params as $p) {
oci_bind_by_name($stmt, $p['name'], $p['value'], $p['length']);
}
$res_SP = ociexecute($stmt);
return $res_SP;
} catch (\Throwable $th) {
return false;
}
但是用这个修改SP CALL时,不起作用
$stmt = oci_parse($this->DBTEST->conn_id, "BEGIN MYPROC(:P_DNI,TO_DATE('01/01/2024','dd/mm/yyyy')); END;");
该 mod 在控制台等设备上进行了测试,并按预期工作,但通过 codeigniter 调用这种方式时则不然
提前非常感谢您的任何建议
对每个数据库开发人员检查失败基础的有用博客
https://imnotgettingit.com/oracle-performance-tuning-essential-daily-queries-for-dbas/