免责声明:这与其他主题不同。
我们在使用自然键时面临的一个缺点是,如果业务逻辑发生变化并且我们需要更改一个键,我们需要将这种更改传播到所有链接表中。
但是,使用ON UPDATE CASCADE声明,我们可以让 DBMS 在我们更改键值时为我们传播更改。
我不明白的是:这种方法有什么缺点?是否存在使用ON UPDATE CASCADE
对数据库有风险的情况?
因为如果不是,那么如果在某种情况下,使用代理键的唯一原因是更容易更改业务自然键,那么ON UPDATE CASCADE
应该使用而不是将所有表转换为代理键。