我有一个包含以下列的表
EndDate DateTime AllowNulls
IsApproved Bit AllowNulls
当我向表格发送选择查询时,这两列会产生错误。
让我们说这是我的选择查询。
SELECT S.Name, S.Surname,
CASE
WHEN S.EndDate IS NOT NULL AND S.IsApproved = 1 THEN 'Left'
WHEN S.EndDate IS NOT NULL AND S.IsApproved = 0 THEN 'Waiting'
WHEN S.EndDate IS NULL AND S.IsApproved IS NULL THEN 'Joined'
ELSE ''
END AS Durumu
FROM STUDENT S
我收到的错误: 无法启用约束。一行或多行包含违反非空,唯一或外键约束的值
我的问题是如何恰当地选择这些空列?
P.S。此错误与使用相同主键返回相同查询无关,因为我的表中只有一个条目:)
答案 0 :(得分:2)
我假设您使用强类型DataSet来获取数据,对不对?
您的DataSet
不是由您的数据库引发此错误。
您可以通过以下方式检查导致异常的原因:
DataTable
/ DataSet
。DataTable.GetErrors
以获取RowError
设置的所有行也许您只需通过配置窗口刷新表,因为同时您已经更改了sql-server中的约束。