当前位置: 代码迷 >> Sql Server >> int 溢出解决方法
  详细解决方案

int 溢出解决方法

热度:110   发布时间:2016-04-27 13:44:05.0
int 溢出
比如: 
SQL code
select power(12,10);


出错,发生溢出,
  应如何转换呢?

//如下提示:
C# code
消息 232,级别 16,状态 3,第 1 行类型 int 发生算术溢出错误,值 = 61917364224.000000。


------解决方案--------------------
超出了int类型的最大值了
------解决方案--------------------
select power(12.0,10);
------解决方案--------------------
SQL code
select cast(power(12.0,10) as bigint)/*(无列名)61917364224*/
------解决方案--------------------
探讨

SQL code


select cast(power(12.0,10) as bigint)

/*
(无列名)
61917364224
*/

------解决方案--------------------
探讨
比如:

SQL code
select power(12,10);


出错,发生溢出,
应如何转换呢?

//如下提示:

C# code
消息 232,级别 16,状态 3,第 1 行
类型 int 发生算术溢出错误,值 = 61917364224.000000。

------解决方案--------------------
探讨

如果,
它超出了bigint 了,
又用什么方法类型来存呢?

一个项目中每条数据的主键都是 [GUID]类型的,我想计算它[GUID]占用多少硬盘容量。
也就是:想取得服务器总共有多少条数据,
数量必会超出bigint,
那用什么类型才能装得下呢?

如果我用C# 语言,ado.net方法 ,这么大的数据,用什么C#变量来存呢?

------解决方案--------------------
bigint 最大值是 亿亿级的。你的数据有多大?
------解决方案--------------------
select cast(power(12.0,20) as decimal(38,0))
  相关解决方案