如何使用 ORACLE(OCI) 在 SQL/PHP 中进行更新查询

Posted

技术标签:

【中文标题】如何使用 ORACLE(OCI) 在 SQL/PHP 中进行更新查询【英文标题】:How to do an update query in SQL/PHP with ORACLE(OCI) 【发布时间】:2012-08-29 05:39:34 【问题描述】:

我是 Oracle 新手,并且在 php 中使用 OCI。在我尝试做一个更新声明之前,我一直做得很好。

include("ORCLconfig.php");

$updateTitleInserted = oci_parse($conn, "UPDATE insured SET INSURED_TITLE=
'$updateTitle' WHERE INSURED_ID='$INSURED_ID'");

oci_execute($updateTitleInserted, OCI_COMMIT_ON_SUCCESS); 

oci_free_statement($updateTitleInserted); 


oci_close($conn);

我要做的就是更新语句,以便用户可以更改一个人的标题。我正在使用 AJAX 异步执行此操作,当用户尝试将标题更改为当前值时,它会很好地处理函数,但如果新值不同,它会卡在更新语句中并且没有进行任何更改。

【问题讨论】:

这听起来可能很基础,如果是这样,请原谅,但是您是否尝试过在平面文件中使用硬编码值的相同代码?我在您的 sn-p 中看不到设置变量的位置。您是否发现任何错误? 这有点傻,但我为保险标题调用了错误的变量...以前没有看到它,因为这是我第一个使用错误日志而不是显示错误的项目页面 【参考方案1】:
$c = oci_connect($userName, $password, "(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =$serverName)(PORT = 1521)))(CONNECT_DATA=(SID=$databaseName)))");
$strQuery = "UPDATE table SET field = :xx WHERE ID = 123"
  $stmt = OCIParse($c, $strQuery);

    OCIBindByName($stmt, ':xx', $fieldval);



      $ok = OCIExecute($stmt);

试试这个

【讨论】:

以上是关于如何使用 ORACLE(OCI) 在 SQL/PHP 中进行更新查询的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 oracle 插件部署基于 qt 的应用程序

如何在 ubuntu 机器上安装 oracle instantclient 和 pdo_oci?

在 Opensuse 环境中安装 oracle 和 php oracle 扩展(OCI8)

如何在oracle中的blob字段下读取jpg格式文件保存

Oracle OCI 连接池与 Oracle UCP

使用 c# 和 OCI 中的 RETURNING INTO 子句在 Oracle 上创建行 ID 的正确方法是啥: