c++ - 在 Oracle DB OCCI 界面中使用 UPDATE
问题描述
我使用oracle occi api来更新数据,代码:
Environment * env = Environment::createEnvironment();
Connection * con = env->createConnection("nm_web","nm_web99","192.168.26.42/orcl");
Statement *stmt;
string sqlStmt =
"update tb_yctp_daq_record set deal_status=1";
try{
stmt = con->createStatement(sqlStmt);
stmt->execute();
}catch(SQLException ex)
{
cout<<"Exception thrown for updateRow"<<endl;
cout<<"Error number: "<< ex.getErrorCode() << endl;
cout<<ex.getMessage() << endl;
}
con->commit();
con->terminateStatement (stmt);
Environment::terminateEnvironment(env);
return true;
但是这段代码卡在“stmt = con->createStatement(sqlStmt);”中
解决方案
我只是没有在 PLSQL 工具中提交更新操作,这可能导致锁定此表。
推荐阅读
- python - 如何从字符串文字构建字符串对象?
- ag-grid - 如何在 ag 网格中更新服务器端行模型类型中的行/设置行数据?
- docker-compose - Docker-compose 卷映射到外部 USB 驱动器
- python - CUDA GPU processing: TypeError: compile_kernel() got an unexpected keyword argument 'boundscheck'
- python - 如何使用包含列表中值的字典扩展 pydatable 的列?
- java - 从文件中读取数组元素时出现 NullPointerException 错误 - Java
- android - 如何将 Firebase 中的图像检索到我的 android 应用程序中?
- mongodb - 在 docker 容器中运行 mongo
- r - 未使用参数 umap 的 DimPlot
- hyperlink - 为什么建议为魔术链接 JWT 令牌提供比通过 HTTP 传递的令牌更短的 TTL,为什么是一次性的?