假设我的数据库中有 5 个 MyISAM 表。每个表都有一个键,我们称之为“id_num”...
“id_num”是我用来将所有表连接在一起的字段。“id_num”的某个值可能出现在所有表中,有时也可能只出现在表的子集中。
如果我想删除数据库中某个“id_num”的所有实例,我可以只对所有表执行 DELETE 命令,还是应该检查“id_num”的值是否存在?
DELETE * FROM table1 WHERE id_num = 123;
DELETE * FROM table2 WHERE id_num = 123;
DELETE * FROM table3 WHERE id_num = 123;
DELETE * FROM table4 WHERE id_num = 123;
DELETE * FROM table5 WHERE id_num = 123;
或者我应该先在每个表上执行一个 SELECT 命令,以检查这些行在删除之前是否存在于表中?什么是最佳实践?
(我使用的是 MyISAM,所以级联删除在这里不是一个选项。)