1
我想在mysql數據庫中使用ON CASCADE DELETE,但是我無法讓它工作。 這裏是我的代碼:mysql刪除級聯不起作用
CREATE TABLE sometable
(
testId CHAR(43),
blocked BOOL,
PRIMARY KEY(testId)
);
CREATE TABLE p
(
testId CHAR(43),
phrase text,
source text,
FOREIGN KEY (testId) REFERENCES sometable (testId) on delete cascade
);
CREATE TRIGGER sometable_insert BEFORE INSERT ON `sometable` FOR EACH ROW SET NEW.`testId` =UUID();
我然後執行INSERT INTO sometable,這將產生一個UUID。 我拿這個UUID並將其插入表p。插入到p(testId,phrase,source)值中('07616f60-424f-11df-871a-b98e9','fun','test');
在某些表格中對行進行刪除時,表p中沒有任何操作發生。 我錯過了什麼或者我做錯了什麼
您是否使用InnoDB的? – nickf 2010-04-07 14:38:48
也許你必須在p表中的testId列上定義一個索引。 – 2010-04-07 14:43:15