0
私はOn Cascade Delete.
を使用しようとしています親テーブルDelete from customers where customer_Id=3
からレコードを削除すると、子レコードはまだそこに残っています。私のコードはこれをどのように動作させるべきですか?カスケードを使用して削除する
CREATE TABLE IF NOT EXISTS customers /* Parent table */
(
customer_Id INT NOT NULL AUTO_INCREMENT,
firstName VARCHAR(30),
lastName VARCHAR(30),
userName VARCHAR(30),
password VARCHAR(30),
PRIMARY KEY(customer_Id),
UNIQUE KEY(userName)
)ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS orders /* Child table */
(
item_Id INT NOT NULL AUTO_INCREMENT,
item_cost DOUBLE,
item_name VARCHAR(30),
customer_Id INT NOT NULL,
userName VARCHAR(30),
PRIMARY KEY(item_Id),
CONSTRAINT First_Foreign_Key1
FOREIGN KEY fk_customer_id(customer_Id)
REFERENCES customers(customer_Id)
ON UPDATE CASCADE
on DELETE CASCADE,
CONSTRAINT Second_Foreign_Key2
FOREIGN KEY fk_userName(userName)
REFERENCES customers(userName)
ON UPDATE CASCADE
ON DELETE CASCADE
)ENGINE=InnoDB;