【问题标题】:SQL Server 2005 is changing decimal to integerSQL Server 2005 将十进制更改为整数
【发布时间】:2012-02-21 15:29:00
【问题描述】:

我的列的数据类型是decimal(18,0),但是当我在数据库2.3 中输入值时,它会变为2

【问题讨论】:

  • 编辑问题,使其成为问题

标签: sql-server visual-studio sql-server-2005 windows-7 visual-studio-2005


【解决方案1】:

decimal(18, 0) 表示您要创建一个十进制字段,其中存储:

  • 18 位,小数点左右两边共用。
  • 小数点右边0位。

这就解释了为什么2.3 会变成2。有关详细信息,请参阅msdn documentation for the decimal datatype

【讨论】:

    【解决方案2】:

    用于存储此值的字段的类型应为decimal(18,1)

    检查一下:

    SELECT CAST(2.3 as decimal(18,0))
    SELECT CAST(2.3 as decimal(18,1))
    

    【讨论】:

    • 感谢您的帮助,我在想我的 sql server 安装有问题,非常感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-29
    • 1970-01-01
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    • 1970-01-01
    • 2013-04-18
    相关资源
    最近更新 更多