首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL关于BIGINT数据类型的有关问题

2012-05-22 
SQL关于BIGINT数据类型的问题bigint数据类型范围是–9 223 372 036 854 775 808~9 223 372 036 854 775 807

SQL关于BIGINT数据类型的问题
bigint数据类型范围是–9 223 372 036 854 775 808~9 223 372 036 854 775 807
看下面的例子:

SQL code
DECLARE @a BIGINT,        @b BIGINT ;SET @a=900;SET @b=20120512*10000+@a;SELECT @b;/*结果:消息 8115,级别 16,状态 2,第 4 行将 expression 转换为数据类型 int 时出现算术溢出错误。*/

请问为什么会报错啊?@b没有超出范围啊,请高手解答下。
我想使@b=2012050120900 然后转换为时间类型‘201205120900’可以吗??

[解决办法]
SQL code
DECLARE @a BIGINT,        @b BIGINT ;SET @a=900;SET @b=cast(20120512 as bigint)*10000+@a;SELECT @b;-- 结果201205120900 

热点排行