sql-server - TSQL - 在插入之前如何根据不同列中的值检查值?

标签 sql-server database check-constraints

有没有办法实现 CHECK 约束来检查同一个表中不同列中的另一个值?具体来说,我想确保在插入行之前要插入的“ checkout ”日期值大于表中的“ checkin ”日期值。

我可能会遗漏一些详细信息,因此如果是这种情况,请告诉我。

最佳答案

是的,MSSQL Server(和其他)允许 CHECK CONSTRAINTS on the table - 以便您可以比较列:

ALTER TABLE tbl ADD CONSTRAINT chkCheckout_GT_Checkin
    CHECK (Ckeckout > Checkin)

关于sql-server - TSQL - 在插入之前如何根据不同列中的值检查值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/814029/

相关文章:

sql - 在 SQL 中使用 2 个不同的表插入值

java - 当数据库更改时在 Android 和桌面 Java 上触发事件

SqLite.js 未捕获错误 : CHECK constraint failed

SQL 约束条件检查 : if column0 is null, column1 不为空,反之亦然

sql - 在删除之前检查 SQL 中的完整性约束冲突

sql-server - 使用CI/CD管道部署数据库项目时如何设置SQL用户密码

sql-server - 无法执行请求的操作,因为链接服务器 'MSOLAP' 的 OLE DB 提供程序 'SSAS' 不支持所需的接口(interface)

python - 从 SQL 表中获取值以及 Python 中的列表形式的列名

html - 在 JSP 中搜索数据库

php - 如何连接两个数据库表并从连接表中返回最低价格