我在查找列更新列表中另一列的值之前是否包含某个值的简单方法遇到了一些麻烦。举例来说,如果我有表StudentsParticipationInClass像下面更新另一列时检查某列是否包含某个值
| ID | Grade | State | | 1 | 'U' |'OnGoing'| | 2 | '3' | 'Done' |
我希望有一个约束告诉才能够将状态更新为完成年级必须的东西比“U”或NULL其他用户。
我在查找列更新列表中另一列的值之前是否包含某个值的简单方法遇到了一些麻烦。举例来说,如果我有表StudentsParticipationInClass像下面更新另一列时检查某列是否包含某个值
| ID | Grade | State | | 1 | 'U' |'OnGoing'| | 2 | '3' | 'Done' |
我希望有一个约束告诉才能够将状态更新为完成年级必须的东西比“U”或NULL其他用户。
这种查询可以帮助您:
UPDATE StudentsParticipationInClass
SET State = 'Done'
WHERE Grade <> 'U'
AND WHERE Grade IS NOT NULL
AND WHERE ID = 1
我建议你添加一些逻辑到你的应用程序代码,以便允许被更新只记录显示为这样。 –
我希望它在数据库级别,以便如果将来开发另一个程序,它也不必将该逻辑添加到其中。 – ccb3