2013-07-03 35 views
0

我有一个表格从哪里信息输入到多个数据库具有相同的ID,如果错误输入错误的数据,我想从所有表中删除。php mysql代码从多个表中删除数据具有相同的ID

如何以及如何从所有表中删除与该ID相关的所有信息。

+8

这就是为什么我们使用外键,参照完整性和ON DELETE CASCADE。 –

+0

如果您正在使用MySQL,请使用InnoDB表和参照约束。它会自动处理数据一致性。 –

+0

我没有在数据库表中指定外键,而我的ID是由我写的。级联删除对数据库中提供的外键有效。 –

回答

0

你可以做多个表中删除: -

http://dev.mysql.com/doc/refman/5.0/en/delete.html

例如说你有4个表,并要删除所有在他们3,涉及到的第一个表中的记录: -

DELETE Table1, Table2, Table3 
FROM Table0 
INNER JOIN Table1 
ON Table0.Id = Table1.ParentId 
INNER JOIN Table2 
ON Table0.Id = Table2.ParentId 
INNER JOIN Table3 
ON Table0.Id = Table3.ParentId 
WHERE Table0.Id = 1 

当然你也可以从第一个表格(Table0)中删除。

相关问题