为什么我不能在sql server表中插入小数?

时间:2012-12-02 21:31:44

标签: sql sql-server

我有一个简单的查询:

INSERT INTO tblIndicators (RunID, EventTS, MA1t3) 
Values (65, '11/2/2012 2:25:00 AM', 1.0); 

我收到此错误消息:

  

Msg 8115,Level 16,State 8,Line 1
  算术溢出错误将数字转换为数据类型数字。

Decimal数据类型的精度为(8,8)。那么问题是什么?

3 个答案:

答案 0 :(得分:12)

decimal (8, 8)表示所有8位有效数字都位于小数点右侧。 1.0太大了。

答案 1 :(得分:2)

尝试小数(8,2)

(8,8)不会在。左边留下任何数字。

答案 2 :(得分:0)

8,8表示最多可存储0.99999999 如果您需要存储12345678.12345678这样的数字,则应声明:十进制(16,8)

解释此声明:十进制({TotalDigits},{DigitsToTheRight})