Phương pháp
Chạy hai câu lệnh DELETE riêng biệt trên hai bảng, hoặc dùng cú pháp DELETE t1, t2 FROM t1 JOIN t2 ... (MySQL hỗ trợ multi-table delete). Ví dụ dưới dùng hai câu lệnh riêng cho rõ ràng.
1. Tạo bảng 1
mysql> create table DemoTable1 (
Id int,
Name varchar(20)
);
Query OK, 0 rows affected (0.63 sec)
2. Chèn dữ liệu bảng 1
mysql> insert into DemoTable1 values(1,'Chris'),(2,'David'),(3,'Bob');
3. Tạo bảng 2
mysql> create table DemoTable2 (
ClientId int,
ClientName varchar(20)
);
Query OK, 0 rows affected (1.19 sec)
4. Chèn dữ liệu bảng 2
mysql> insert into DemoTable2 values(101,'Mike'),(110,'Bob'),(120,'Adam');
5. Xóa tên 'Bob' trên cả hai bảng
mysql> delete from DemoTable1 where Name = 'Bob'; Query OK, 1 row affected (0.23 sec) mysql> delete from DemoTable2 where ClientName = 'Bob'; Query OK, 1 row affected (0.27 sec)
6. Kiểm tra bảng 1
mysql> select * from DemoTable1;
+------+-------+ | Id | Name | +------+-------+ | 1 | Chris | | 2 | David | +------+-------+ 2 rows in set (0.00 sec)
7. Kiểm tra bảng 2
mysql> select * from DemoTable2;
+----------+------------+ | ClientId | ClientName | +----------+------------+ | 101 | Mike | | 120 | Adam | +----------+------------+ 2 rows in set (0.00 sec)
Lưu ý: Nên bọc trong transaction để đảm bảo tính nguyên tử.