我要更新的数据量比较大 大约是800条用多选方式获得 ID ,
然后根据对应的ID
批量更新数据库被的表
我原来的方法是 将所有ID 组合成字段@str varchar(8000)
如@str="1,2,3,4,8"
最后利用:
update 表1 set a=1
where charindex( ',' + id + ',', ',' + @str + ',' ) > 0
更新数据但是超过100条,速度太慢了 效率低?求正解?
然后根据对应的ID
批量更新数据库被的表
我原来的方法是 将所有ID 组合成字段@str varchar(8000)
如@str="1,2,3,4,8"
最后利用:
update 表1 set a=1
where charindex( ',' + id + ',', ',' + @str + ',' ) > 0
更新数据但是超过100条,速度太慢了 效率低?求正解?
set @str='1,2,3,4,8'Exec ('Update t1 Set a=1 Where ID In('+@str+')')
而且 我ID 已经到8位了
varchar 最高长度是多少啊?
varchar(max) : 2^31-1 (2147483645)
varchar 最长8000
nchar 最长4000
nvarchar 最长4000是不是这样啊?