默认值设置但字段未更新

时间:2012-02-16 23:43:56

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

刚刚在我的SQL Server 2008表中的位字段中添加了默认值0。插入内容不是默认为0,它仍然放置NULL ...不确定原因。

ALTER TABLE [dbo].[Messages] 
  ADD  CONSTRAINT [DF_Cars_IsDeleted]  DEFAULT ((0)) FOR [IsDeleted]

我们正在使用Entity Framework 4将新记录保存/插入此表。

2 个答案:

答案 0 :(得分:1)

默认值仅在没有为列指定值时有效。如果insert语句为IsDeleted列提供空值,则将存储空值而不是默认值。如果是这种情况,您可以从insert语句中删除该列,或将其包装在isnull()中,默认值为0.

希望这有帮助。

答案 1 :(得分:0)

EF模型中的IsDeleted属性是否可以为空?

我相信您是从现有数据库生成实体模型对象的。 IsDeleted是nullable列。我认为这是因为你有IsDeleted属性的可空类型。

请继续尝试......

  • 转到.edmx模型文件。
  • 右键单击Messages.IsDeleted
  • 选择属性
  • 您将在“属性”面板上看到“默认值”
  • 您将0设为默认值。