SQL SERVER数据库下,模型新增字段后,decimal小数位数不正确的问题。 返回

SqlSugar 沟通中
8 1065

SqlSugar 版本:5.1.4.170 到目前最新版本都有次问题。

CodeFirst 模式下,首次运行生成模型时,Price 的类型正确为 decimal(18,4)

模型新增字段 Price2 后,再次运行时,生成字段的类型不正确为 deciaml(18,0)


目前已在MYSQL中测试,未出现此问题,在SQL SERVER 数据库下测试复现结果。


SugarTestDemo.zip


热忱回答8

  • fate sta fate sta VIP0
    2025/10/27
    [SugarColumn(length=18,DecimalDigits=2)] 
    public decimal? Price2 { get; set; }


    指度一下长度和精度

    0 回复
  • fate sta fate sta VIP0
    2025/10/27

    image.png

    在配置一下支持精度修改

    0 回复
  • 疋疋 疋疋 VIP0
    2025/10/28

    @fate sta那应该是跟新增字段时候的decimal默认类型那边冲突了吧

    0 回复
  • 疋疋 疋疋 VIP0
    2025/12/17

    @fate sta:目前发现另外一个问题,修改Length 后不生效。必须改了DecimalDigits才能触发更新

    局部截取_20251217_152629.png

    0 回复
  • fate sta fate sta VIP0
    2025/12/17

    image.png

    0 回复
  • fate sta fate sta VIP0
    2025/12/17

    长度和精度都需要加上。

    0 回复
  • 疋疋 疋疋 VIP0
    2025/12/17

    @fate sta:加了也没用。除非DecimalDigits变化,否则Length 怎么调整都不会有效果

    局部截取_20251217_162730.png

    0 回复
  • 疋疋 疋疋 VIP0
    2025/12/17

    @fate sta:你可以看下我最早的那个附件,这个请跨过那是能够复现的,DecimalDigits不改,只修改Length 是无效的

    0 回复