Disclaimer: This is not the same question as the other topics.
One of the cons we face when using Natural Keys, is that, if the business logic changes and we need to change one key, we need to propagate this change throughout all linked tables.
However, using a ON UPDATE CASCADE declaration we can make the DBMS to propagate the change for us when we change a key value.
What I don't understand is: What are the cons of this approach? Is there any situation where using ON UPDATE CASCADE
can be risky to the database?
Because if not, then if in a situation, the single reason to use Surrogate keys is the fact that it is easier to change business Natural keys, then ON UPDATE CASCADE
should be used instead of converting all tables to Surrogate keys.