我有两张桌子。城市和调查。
City
id int(11) primary key,
Name varchar(255)
Survey
Id int(11) primary key,
CityId ref City.id,其他栏目...
例如,伦敦在City表中,id是23。我在cityId 23的调查表格中有调查。
当我从城市表中删除伦敦时,我不想从测量表中删除行。我还需要报告城市名称的调查细节。但是,伦敦被删除了,我是城市表。
我该如何解决这个问题呢?
发布于 2017-03-24 23:29:42
您可以通过在Survey中创建一个外键引用来“解决”这个问题
alter table survey add constraint fk_survey_cityid
foreign key (cityid) references city(id);然后,当您尝试从city表中删除London时,删除将失败。另一个表引用了该id。
发布于 2017-03-24 23:38:18
如果不想从测量表中删除行,则为
例如,添加默认城市
示例: id为0的城市NC
在您的投票中,您将CityId列设置为默认值0;
UPDATE Survey SET CityId=0 WHERE CityId = CityneedDelete ;和
DELETE FROM City where CityId = CityneedDeletehttps://stackoverflow.com/questions/43003364
复制相似问题