1

我有两张桌子。DeviceDevice_Config。设备表具有以下列:

device_id
config_id
bla
bla2
foo
bar

Device_config具有以下列

id
foo
bar

正如您可以预测的那样,config_id在我的Device表上有一个外键引用idDevice_config 所以我在我的Device表上添加了这个约束。

ALTER TABLE device
ADD CONSTRAINT device_config_id_fk FOREIGN KEY (config_id)
REFERENCES device_config (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE CASCADE;

但是这样一来,当in中的一行Device_config被删除时,表上对应的行就Device被删除了。但是我想要相反的。删除设备时,我希望删除相应的条目device_config。我怎样才能做到这一点?

4

1 回答 1

4

然后改变逻辑。 设备表不会有 *config_id* 并且device_config将有 *device_id*。关系是一个设备可能有很多 device_configs。

然后

ALTER TABLE device_config
ADD CONSTRAINT device_config_fk FOREIGN KEY (device_id)
REFERENCES config (device_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE CASCADE;
于 2013-05-24T11:42:44.417 回答