如何更新在另一个表中作为外键引用的表的主键?

Mob*_*bin 3 c# sql

假设一个

Table "Person" having 
    "SSN",
    "Name",
    "Address"
Run Code Online (Sandbox Code Playgroud)

和另一个

Table "Contacts" having
    "Contact_ID",
    "Contact_Type",
    "SSN" (primary key of Person)
Run Code Online (Sandbox Code Playgroud)

同样

Table "Records" having
    "Record_ID",
    "Record_Type",
    "SSN" (primary key of Person)
Run Code Online (Sandbox Code Playgroud)

现在我希望当我更改或更新SSN in person表时,相应地在其他2个表中更改.

  1. 如果有人可以帮我解决这个问题
  2. 或者如何为表传递外键约束

Ben*_*son 8

只需将ON UPDATE CASCADE添加到外键约束即可.


Mat*_*tsT 5

优选地,表的主键不应该改变.如果您希望更改SSN,则应使用不同的主键,并将SSN作为人员表中的普通数据列.如果进行此更改已为时已晚,则可以将ON UPDATE CASCADE添加到外键约束中.