问题描述
- 菜鸟请教:bigint类型数据赋值给int型时出现溢出
- 最近在做sqlserver存储过程,其中有这样一段查询,将bigint型数据oid赋值给@ID时出现溢出。
已经看了好几天,怎么改都是溢出,都转换为字符串会有其他错误,,求解答。本人新手上路,希望多多指教。
解决方案
是不是实际的值已经超过int的最大值了。我测试如果值没操作,不会有问题,比如
下面将@i就是int的最大值,再加一就会出错了
DECLARE @i BIGINT =2147483645DECLARE @j INTSET @i=POWER( CONVERT(BIGINT 2)31)-1SET @j=@iSELECT @i@j
时间: 2024-09-08 13:56:28