我要在表中添加一个列,并希望在其上设置一个约束,它不允许在给定日期之前更新,存储在同一个表行中。
这是我到目前为止所得到的:
somecolumn
如何仅对apt-get
的更新进行此操作?应允许插入和更新其他列。
我在内存H2数据库中测试它,但它也必须与SQL Server一起使用。
答案 0 :(得分:1)
我认为安全的方法是使用触发器。
这样的约束:
CHECK (somedatecolumn < GETDATE())
从关系的角度来看,确实没有意义。它可以保证update
或insert
上的值为true。但是,数据库无法保证值通常为真。您应该使用CHECK
约束来表示您希望连续存在的事物。
(问题是GETDATE()
更改而行上没有任何更改。)