在数据库中插入0(零)变为空

时间:2013-09-02 09:21:57

标签: sql entity-framework-4 sql-server-2012

我正在使用Entity Framework将一些数据插入我的数据库(sql server 2012)。 将0值插入float字段后,它在数据库中显示为null。

        using (var db = new myDB()) {
            Part_Properties pp = new Part_Properties {
                part_id = 7007,
                properties_id = 31,
                value_num = 0
            };
            db.Part_Properties.AddObject(pp);
            db.SaveChanges();
        }

根据剖析器,这是发送:

exec sp_executesql N'insert [dbo].[Part_Properties]([part_id], [properties_id], [value_num], [value_char], [info])
values (@0, @1, @2, null, null)
',N'@0 int,@1 int,@2 float',@0=7007,@1=31,@2=0

并且DB中的结果是这样的: part_id = 7007,properties_id = 31,value_num = null

但是我需要这个值为0。

任何想法?

1 个答案:

答案 0 :(得分:0)

我可能错了,但不应该这样。你可以通过定义null并将其转换为'0'来反过来。

请检查您的陈述是否有一些规则。