![]() |
1
0
正如您所概述的,您需要在两个方向上进行约束检查:当机场更新时,确保国家/地区有效;当国家/地区更新时,您需要确保所有机场注册相对于更新的国家/地区范围仍然有效。 您可以通过带有函数的约束子句来实现这一点,但是,当您使用触发器时,您可以更好地控制逻辑。e、 在一个trigger函数中,您总是可以使用新旧行或值,因此如果时间范围没有改变,您可以轻松跳过检查。 要检查“另一面”,您必须在触发器函数中执行SQL查询。可以在外键列上添加索引(例如机场.国家)如果机场中有许多行,则加快查询速度。
https://www.postgresql.org/docs/12/plpgsql-trigger.html 有一个关于触发器函数的综合示例和文档。 |
![]() |
2
0
如果我答对了你的问题,也许这对你有帮助。
|
|
Johnny T · 基于当前值的SQL合并表[重复] 4 月前 |
![]() |
Peter Schofield · 类型转换Postgresql 4 月前 |
![]() |
Kevin Smeeks · Pyspark JDBC分区读取 4 月前 |
![]() |
Andrus · 如何在sql中查找第二个匹配项 5 月前 |