我正在使用可视化Web开发人员C#,我将storeid
从Sql Server设置为默认值100。
然后我将列storeid
设置为可见的假,因为我想自动插入100而不显示在我的表单上。但每次我尝试从表单中插入新记录时,它只在数据库storeid
列中显示为null。
这是storeid
datagridview列代码:
<asp:BoundField DataField="StoreID" HeaderText="Store ID"
SortExpression="StoreID" ConvertEmptyStringToNull="False" ReadOnly="True" Visible="False">
这是storeid详细信息视图代码:
<asp:BoundField DataField="StoreID" HeaderText="Store ID"
SortExpression="StoreID" ConvertEmptyStringToNull="False" ReadOnly="Visible="False">
这是我的商店列数据库:
ALTER TABLE [dbo].[StaffCCD] ADD CONSTRAINT [DF_StaffCCD_StoreID] DEFAULT ((100)) FOR [StoreID]
答案 0 :(得分:0)
我怀疑发生了什么,即使该列被隐藏,仍然在Insert中传递StoreID的值为'Null'。默认约束仅在为列提供no other value时有效。
我通过在SQL Management Studio中运行insert语句(不设置Store ID)并检查Store ID实际上是否正确默认为100来测试默认值是否已正确配置。