Chinaunix
标题:
oracle 循环查询某一记录问题???
[打印本页]
作者:
iacxin099
时间:
2010-06-25 09:42
标题:
oracle 循环查询某一记录问题???
开发环境:Solaris 10
数据库:Oracle 10g 用PL/SQL管理
开发工具:CC 编译器 OCCI接口
部分代码如下:
COracleWrapper *obj = new COracleWrapper(user, passwd, db);
string sqlStr = "select * from tableOne where IsActive=1";
string updateStr = "update tableOne set querynow=1 where taskid=5";
while(true)
{
ResultSet* querySet = obj->ExecuteQuery(sqlStr);
while(querySet->next())
{
int stateValue = querySet->getInt(4);
if(stateValue == 1)
{
obj->ExecuteUpdate(updateStr);
}
}
sleep(10000);
obj->ClearQuery(querySet);
sleep(10000);
}
delete (obj);
问题:当我用while循环查询某一表某一记录时,这个记录某一字段就不能更新了吗?用PL/SQL更新改记录时,提示记录被另一用户锁住。
有什么办法循环查询某一记录时,又能修改改记录某一字段。
作者:
doni
时间:
2010-06-25 09:58
obj->ExecuteUpdate(updateStr);
有update
作者:
iacxin099
时间:
2010-06-25 10:53
stateValue 和querynow是表tableOne 的两个字段,初始值为0
我是想通过while循环不断查询stateValue 字段的值, 当stateValue 值为1时,执行Update,更新querynow值为1。
当我执行该程序后,用PL/SQL修改stateValue 为1,但是querynow为什么没有变化????
作者:
dingning239
时间:
2010-06-25 11:07
循环的键值貌似不可以更改
作者:
iacxin099
时间:
2010-06-25 11:50
我用C#操作SQL Server2005可以while循环修改键值。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2