私は2つのテーブルを持っています:
1) kind_basis (子基準データ)
id bigint(20) unsigned NO PRI NULL auto_increment
vorname varchar(64) NO NULL
nachname varchar(64) NO NULL
geburtsland_id bigint(20) unsigned NO MUL NULL
2) liste_land (国のリスト)
id bigint(20) unsigned NO PRI NULL auto_increment
iso varchar(2) NO NULL
landname varchar(255) NO NULL
それらの間には関係があります:
ALTER TABLE `kind_basis`
ADD CONSTRAINT `fk_geburtsland_id`
FOREIGN KEY ( `geburtsland_id` )
REFERENCES `liste_land` (`id`)
ON DELETE RESTRICT
ON UPDATE CASCADE ;
次のクエリが可能なのはなぜですか?
DELETE
FROM `liste_land`
WHERE `liste_land`.`id` = 6
「この行は別のテーブル (kind_basis) で使用されているため、削除できません。
liste_land で行を更新すると、kind_basis でも更新されますか?