oracle - 检测由 OCI OCIStmtExecute 调用更新的 ORACLE 行数

标签 oracle oracle-call-interface

我有一个使用 OCIStmtExecute 函数调用调用的 ORACLE 更新语句。

使用 OCI 函数调用我想知道操作更新了多少行,例如零个,一个或多个。

我该怎么做?

最佳答案

在属性类型设置为 OCI_ATTR_ROW_COUNT 的 OCIStmt 语句句柄上使用 OCIAttrGet 函数调用

因此,将以下代码添加到您的程序中:

   ub4 row_count;

   rc = OCIAttrGet ( stmthp, OCI_HTYPE_STMT, &row_count, 0, OCI_ATTR_ROW_COUNT,
           errhp );

哪里:

stmthp是OCIStmt语句句柄

errhp 是 OCIError 错误句柄

rc是定义的返回码(剑)

更新(或删除和插入,如果这是您的操作)的行数被写入传递的 row_count 变量

关于oracle - 检测由 OCI OCIStmtExecute 调用更新的 ORACLE 行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/540856/

相关文章:

node.js - npm install oracledb 给出错误 : Cannot find $OCI_LIB_DIR/libclntsh. dylib

java - Hibernate 不想加载 Oracle 驱动程序

java - Java Servlet 中的 DBMS_ALERT 用法

oracle - 在 OCI 中使用 PL/SQL 变量会导致 "ORA-01008: not all variables bound"错误

c - OCI Lib - 无法执行更新

sql - 计算 pl/sql 中游标的行数

java - 位置 : 5. 处的格式错误的 SQL92 字符串需要 "call"?

使用 pecl 安装 Php PDO OCI 驱动程序

amazon-web-services - 使用 nginx 向位于云中的 docker 容器发出 http 请求

php - 无法加载 oci8 -> fatal error : Call to undefined function oci_connect()