如何更新sql中的主键值?

Gau*_*093 1 sql sql-server primary-key sql-update

我有一个国家表,其中有一列Countryid我意外删除了CountryId哪个Had值= 1,现在在州表中有一个列countryId = 1的值,用于根据国家ID获取记录(状态).我再次插入国家但它有不同的ID,所以如何在CountryId的国家表中再次更新该值,主键从2到

Gor*_*off 5

您的问题的直接答案是使用set identity_insert off.最好的起点是文档.

更重要的是,有一种非常简单的方法可以避免将来出现这些问题:使用显式声明的外键关系.如果您有外键约束:

alter table state
    add constraint fk_state_country foreign key (countryId) references country(countryId);
Run Code Online (Sandbox Code Playgroud)

然后delete就不会被允许了.