codefirst,postgressql 添加新的 float 可空 列,生成的sql语句错误 返回

C#论坛 老数据
6 1709

tor_sigma1 属性设置的是可空,float 类型,

生成的sql如下

ALTER TABLE "mc_reconstruction" ADD COLUMN "tor_sigma1" varchar(1) DEFAULT NULL  

该语句是错误的。

热忱回答6

  • 实体发出来看看

    0 回复
  •        数据库里tor_sigma的数据类型是float8。


       [SugarColumn(Length = 36, IsPrimaryKey = true, ColumnDescription = "Reconstruction的ID,主关键字")]

            public string ReconID

            { get; set; }

    /// <summary>

            /// tor的高斯函数sigma,

            /// 重建tor滤波的sigma

            /// </summary>

            [SugarColumn(IsNullable = true, ColumnDescription = "tor的高斯函数sigma")]

            public float tor_sigma { get; set; }


    0 回复
  • 通过数据库工具查看的正确变更sql是:

    ALTER TABLE public.mc_reconstruction ALTER COLUMN tor_sigma TYPE float4 USING tor_sigma::float4;

    ALTER TABLE public.mc_reconstruction ALTER COLUMN tor_sigma DROP NOT NULL;


    0 回复
  • 你先用columndatatype设置

    0 回复
  • 后续版本优化

    0 回复
  • 用columndatatype设置,会报我提交的另一个错误

    http://www.donet5.com/Ask/9/13275

    0 回复