(pro*c编程)oracle数据库 update操作 死锁问题 本帖最后由 dy3364cs 于 2013-03-22 09:56:11 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 刚接触数据库,请各位高手指点1、每更新一条记录,去commit一次,这种情况的死锁应该是不会发生了,但是频繁去提交,似乎。2、大量数据,循环中频繁更新数据表,这里有可改进的地方吗,怎么改进? Oracle Pro*C支持标准SQL定义的事务。一个事务是一组SQL语句集合,Oracle把它当作单独的单元运行。一个事务从第一个SQL语句开始,遇到"EXEC SQL COMMIT"(执行当前事务对数据库的永久修改)或"EXEC SQL ROLLBACK"(取消从事务开始到当前位置对数据库的任何修改)时结束事务。当前事务由COMMIT或ROLLBACK语句结束后,下一条可执行SQL语句将自动开始一个新事务。 你的意思是每次循环都去提交?频繁提交没问题? 这是目前的操作:EXEC SQL UPDATE A set count = count + 1,value = value + n (两个统计字段) WHERE x= :x and y= :y and m= :m and n= :n;(x,y,m,n为主键)每一次循环根据四个条件对对应的统计字段做加法。我想在两个或一个循环完成后统一更新,pro*c编程中怎么去实现这个批量更新呢? expr<>all是什么表达式哦 初次使用RMAN,出现异常,不明白。 oracle 9i一直没解决的问题! Oracle 和SQL Server的通讯 求cnoug邀请码! 求一条查询语句 怎么解决以下问题.删用户时报以下错. oracle 安装完后,自动配置需要多少时间 如何判断一个字符是否是数字? oracle的转义字符 dbms_scheduler报错ORA-01438:?求助,求助。。。 为什么会报(full) year must be between -4713 and +9999,and not be 0
1、每更新一条记录,去commit一次,这种情况的死锁应该是不会发生了,但是频繁去提交,似乎。
2、大量数据,循环中频繁更新数据表,这里有可改进的地方吗,怎么改进?
Oracle Pro*C支持标准SQL定义的事务。一个事务是一组SQL语句集合,Oracle把它当作单独的单元运行。一个事务从第一个SQL语句开始,遇到"EXEC SQL COMMIT"(执行当前事务对数据库的永久修改)或"EXEC SQL ROLLBACK"(取消从事务开始到当前位置对数据库的任何修改)时结束事务。当前事务由COMMIT或ROLLBACK语句结束后,下一条可执行SQL语句将自动开始一个新事务。 你的意思是每次循环都去提交?频繁提交没问题?
EXEC SQL UPDATE A
set count = count + 1,value = value + n (两个统计字段)
WHERE x= :x and y= :y and m= :m and n= :n;(x,y,m,n为主键)每一次循环根据四个条件对对应的统计字段做加法。
我想在两个或一个循环完成后统一更新,pro*c编程中怎么去实现这个批量更新呢?