假设我有一张table叫 MANT
这样地
date state
2020-01-24 | 0
2020-01-27 | 1
我还有一张table叫 PREC
这样地
value date
0.00 | 2020-05-18
0.00 | 2020-05-19
0.00 | 2020-05-20
如果我尝试将这些值插入 PREC
```
insert into PREC VALUES (4,'2020-01-25')
我希望这是不可能的,因为在table上 `MANT` ,在插入日期的最早日期中状态为0 `PREC` 但如果我插入例如:
insert into PREC VALUES (4,'2020-01-29')
这已经被允许了。
有人建议在SQLServer中这样做吗?
3条答案
按热度按时间92vpleto1#
你可以用这个
insert ... select
语法和用于筛选的相关子查询:您还可以通过聚合来实现这一点:
kqlmhetl2#
我相信您正在寻找引发异常的插入触发器。例如:
slwdgvem3#
我建议您不要允许直接插入。您可以通过存储过程来控制它。
如果要允许直接插入,可以使用after insert触发器来处理。