我有一个ORACLE更新语句,我使用OCIStmtExecute函数调用调用它。
使用OCI函数调用我想知道该操作已更新了多少行,例如零,一个或多个。
我该怎么做?
答案 0 :(得分:6)
在OCIStmt语句句柄上使用OCIAttrGet函数调用,属性类型设置为OCI_ATTR_ROW_COUNT
所以将以下代码添加到您的程序中:
ub4 row_count;
rc = OCIAttrGet ( stmthp, OCI_HTYPE_STMT, &row_count, 0, OCI_ATTR_ROW_COUNT,
errhp );
其中:
stmthp
是OCIStmt语句句柄
errhp
是OCIError错误句柄
rc
是定义的返回码(剑)
更新(或删除并插入,如果这是您的操作)的行数写入传递的row_count变量
答案 1 :(得分:2)
在语句句柄上调用OCIAttrGet(OCI_ATTR_ROW_COUNT)
。