SQL如何将一列数据批量修改 将该列数据本身加一
我有一列叫ID现在我想让他全部自加1比如原来是233132的现在要变成233133我用了语句setid=id+1但是因为原来的语句是varchar类型的这个会报错溢出更改...
我有一列叫ID
现在我想让他全部自加1
比如原来是233132的现在要变成233133
我用了语句set id=id+1
但是因为原来的语句是varchar类型的 这个会报错 溢出
更改为int类型的时候 提示保存已经超出了最大值了 无法保存
因为我的ID到了最后有12位了
现在的问题是我转换数据类型的时候就提示我数据溢出 这个如何处理
不管是转换为int还是decimal
最后用了这个语句改了
SET ID = CAST(ID AS numeric(20)) + 1 展开
现在我想让他全部自加1
比如原来是233132的现在要变成233133
我用了语句set id=id+1
但是因为原来的语句是varchar类型的 这个会报错 溢出
更改为int类型的时候 提示保存已经超出了最大值了 无法保存
因为我的ID到了最后有12位了
现在的问题是我转换数据类型的时候就提示我数据溢出 这个如何处理
不管是转换为int还是decimal
最后用了这个语句改了
SET ID = CAST(ID AS numeric(20)) + 1 展开
10个回答
展开全部
update table set id= convert(varchar,convert(bigint,id)+1)
-----------------------
据提示,你的id里面有非数字字符,请检查
-----------------------
据提示,你的id里面有非数字字符,请检查
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
UPDATE 表名 SET ID=(CAST(ID AS NUMERIC(16,0))+1)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
set id=convert(varchar(10),convert(int,id)+1)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询