[英]Delete cascade MySQL
I have table prodottipublic
: 我有桌子
prodottipublic
:
and I have table roles_prodotti
: 而且我有表
roles_prodotti
:
I want, when delete record in prodottipublic with id: 10 for example, automatically delete all records with column prodotto_id same 10 in roles_prodotti table. 我想要删除ID为10的prodottipublic中的记录时,自动删除role_prodotti表中prodotto_id列为10的所有记录。
this is create table codes: 这是创建表代码:
CREATE TABLE `prodottipublic` ( `id` int(11) UNSIGNED ZEROFILL NOT NULL, `attivo` int(1) NOT NULL, `nome` varchar(100) DEFAULT NULL, `immagine` varchar(150) DEFAULT NULL, `immaginesx` varchar(150) DEFAULT NULL, `descrizione` text NOT NULL, `sololistino` int(1) NOT NULL DEFAULT '0', `listino` decimal(10,2) NOT NULL, `sconto` int(2) DEFAULT '0', `prezzo` decimal(10,2) DEFAULT '0.00', `categoria_id` int(11) NOT NULL, `meta_keywords`text, `attributi` json NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL) ENGINE=InnoDB DEFAULTCHARSET=utf8;
CREATE TABLE `roles_prodotti` ( `prodotto_id` int(11) UNSIGNED ZEROFILL NOT NULL, `role_id` nt(11) NOT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;
i have solved with this: 我已经解决了:
ALTER TABLE `roles_prodotti` ADD CONSTRAINT ID_prodotto FOREIGN KEY (`prodotto_id`) REFERENCES `prodottipublic`(`id`)ON DELETE CASCADE
and before have empty roles_prodotti 并且之前有空的role_prodotti
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.