Когда и зачем использовать каскадирование в SQL Server?

Внешние ключи — лучший способ sql-srever обеспечить ссылочную целостность ms-sql-server базы данных. Избегать каскадов database-modeling из-за того, что это волшебство, все mssql равно, что писать все на ms-sql-server ассемблере, потому что вы foreign-key не доверяете магии компиляторов.

Что database-modeling плохо, так это неправильное foreign-key-relationship использование внешних ключей, например, создание foreign-keys их задом наперед.

Пример Хуана database-modeling Мануэля является каноническим ms-sql-server примером, если вы используете sql-server код, есть гораздо больше cascade шансов оставить в базе данных rdbms ложные элементы DocumentItem, которые rdms придут и укусят вас.

Каскадные ms-sql-server обновления полезны, например, когда rdbms у вас есть ссылки на данные rdms чем-то, что может измениться, например, первичным sql-srever ключом таблицы пользователей sql-srever является комбинация имени foreign-key-relationship и фамилии. Затем вы хотите, чтобы foreign-key-relationship изменения в этой комбинации table-design распространялись везде, где sql-server на них есть ссылки.

@Aidan, За rdbms ясность, о которой вы говорите, приходится rdms платить высокую цену, шанс ms-sql-server оставить ложные данные в rdbms вашей базе данных, что немало. Для rdms меня обычно просто незнание sql-server БД и неспособность определить, какие cascade FK используются до работы foreign-keys с БД, которые вызывают этот foreign-keys страх. Либо это, либо постоянное foreign-keys неправильное использование database-design каскада, использование его rdms там, где сущности не были foreign-key концептуально связаны, или rdms там, где вы должны сохранить rdbms историю.

sql-server

database-design

foreign-keys

rdbms

cascade

2022-10-08T15:25:21+00:00