2 当对参照表和被参照表的操作违反了参照完整性时,系统可选的策略有哪几种?如何设置?预期结果如何?
时间: 2023-06-11 09:10:07 浏览: 104
当对参照表和被参照表的操作违反了参照完整性时,系统可选的策略通常有以下几种:
1. 级联更新(CASCADE):如果更新了主表中的数据,那么外键表中对应的数据也会被更新。
2. 级联删除(CASCADE):如果删除了主表中的数据,那么外键表中对应的数据也会被删除。
3. 设置空值(SET NULL):如果更新了主表中的数据,那么外键表中对应的数据会被设置为 NULL。
4. 禁止更新(NO ACTION):如果更新了主表中的数据,那么系统会拒绝这个更新操作。
5. 禁止删除(NO ACTION):如果删除了主表中的数据,那么系统会拒绝这个删除操作。
这些策略可以通过数据库管理系统中的外键约束来设置。具体设置方法可以参考数据库管理系统的文档或者教程。
预期结果会根据设置的策略而有所不同。例如,如果设置了级联删除,那么当删除主表中的数据时,外键表中对应的数据也会被删除。如果设置了设置空值,那么当更新主表中的数据时,外键表中对应的数据会被设置为 NULL。不同的策略会产生不同的结果,需要根据实际情况选择合适的策略。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![jar](https://img-home.csdnimg.cn/images/20210720083455.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)