日期:2014-05-17  浏览次数:20485 次

请问批量update记录是不是这样写?
表table,字段如下
ID    int类型,标识,自增+1,标识
日期   date类型,聚集索引
姓名   nvarchar(5)类型
步骤   nvarchar(1)类型,初始为1,用于标记操作步骤

使用SQL语句如下:
updata 表table
set 步骤='2'
where 日期='2013-03-30' and 步骤='1' and ID in (1,2,3,7,8)

备注:
1、设置日期为聚集索引,在updata时对ID使用in这个操作方法,实际上是可行的。
(如果再加上其他非聚集索引的限制,则效率可以更高)
2、放入存储过程中去执行,用事务包含,保证数据一致性。

请指教一下,这个思路对不对?

------解决方案--------------------
可行.看上去没有问题.SQL语句也没问题
------解决方案--------------------
数据库操作都是批量进行的.

如果你进行操作以后,只有一行数据被改变,其实也可以理解为此次操作的数据集和只包含一行数据,只有这一行数据符合要求.