欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

初学者一个批量更新的有关问题

更新时间: 2014-01-05 02:12:08 责任编辑: Author_N1

 

菜鸟求助一个批量更新的问题
小弟菜鸟我现在有一个需求,要对一张表(表A)进行批量更新,这张表里有一个自增的ID字段和一个INT型的字段(假如叫F1),其他结构在本问题里不太重要,现在的情况是:我需要从另一张表里(表B)取出一个值(INT)赋给某个变量(拿定名为index),然后用该变量更新表A的F1列。
要求如下:1、在更新表A的过程中,表B需要锁定,不能有其他用户对其进行更新插入操作;2、对表A的更新并不是固定对所有的数据的F1列都写入变量index的值,而是每更新一条,index都要自加1,至于顺序,可以按照表A的ID升序。
举个例子吧,假如表A有三条记录,ID字段为1、2、3,F1字段均为0,index为19,那么更新后,表A的三条记录的F1字段应该分别为19、20、21。
这语句或是方法应该怎么写?跪求大神。
表A的数量在2-4万之间。
--参考方法--
如果表有三条记录,ID字段为1、2、4,F1字段均为0,index为19,那么更新后,表A的三条记录的F1字段应该分别为19、20、21还是19,20,22?
--参考方法--
UPDATE A SET f1=(select INDEX+ID from B WHERE  INDEX=19)

--参考方法--
引用:
Quote: 引用:

如果表有三条记录,ID字段为1、2、4,F1字段均为0,index为19,那么更新后,表A的三条记录的F1字段应该分别为19、20、21还是19,20,22?
还是19、20、21

UPDATE a SET f1=(select INDEX from b WHERE  INDEX=19)+ROWNUM-1
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:12:08
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6909/
本文WWW.DOC100.NET DOC100.NET版权所有。