Bài MySQL 12: Cách xóa một bảng trong MySQL

Xin chào các bạn, trong bài ngày hôm trước mình đã hướng dẫn các bạn tạo một bảng trong MySQL rồi đúng không nào, vậy thì trong bài hôm nay mình sẽ tiếp tục giới thiệu đến các bạn một phần cũng liên quan đến bảng đó là cách xóa một bảng trong MySQL.

Cú pháp câu lệnh SQL DROP TABLE

Trong MySQL để xóa một bảng các bạn sử dụng câu lệnh DROP TABLE. Cú pháp như sau:

Câu lệnh DROP TABLE sẽ xóa một bảng và dữ liệu của nó vĩnh viễn khỏi cơ sở dữ liệu. Trong MySQL, bạn cũng có thể xóa nhiều bảng bằng một câu lệnh DROP TABLE, mỗi bảng được phân tách nhau bằng dấu phẩy (,).

TEMPORARY cho phép bạn xóa tạm thời các bảng. Điều này giúp bạn tránh được việc xóa nhầm các bảng cần thiết.

Sử dụng IF EXISTS giúp bạn ngăn chặn việc xóa các bảng không tồn tại. Khi bạn sử dụng IF EXISTS, MySQL tạo ra một Lưu Ý, có thể được lấy ra bằng cách sử dụng câu lệnh SHOW WARNING. Điều quan trọng cần lưu ý ở đây là câu lệnh DROP TABLE sẽ loại bỏ tất cả các bảng hiện có và đưa ra một thông báo lỗi hoặc một Lưu Ý khi bạn có một bảng không tồn tại trong danh sách.

Cuối cùng bạn phải có quyền DROP cho bảng mà bạn muốn xóa.

Ví dụ về MySQL DROP TABLE

Chúng ta sẽ xóa bảng task mà chúng ta đã tạo trong bài hướng dẫn cách tạo một bảng bằng cách sử dụng câu lệnh CREATE TABLE.

lệnh xóa bảng trong mysql

Bạn copy dòng code trên vào phần SQL  trong MySQL rồi ấn Go để chạy.

Và kết quả là bạn đã xóa thành công bảng task khỏi cơ sở dữ liệu của mình.

DROP TABLE với LIKE

Giả sử bạn có rất nhiều bảng có tên bắt đầu với là test trong cơ sở dữ liệu và bạn muốn tiết kiệm thời gian bằng cách loại bỏ tất cả chúng bằng cách sử dụng một câu lệnh DROP TABLE. Tuy nhiên, MySQL không cho phép bạn có thể loại bỏ các bảng dựa trên yếu tố đó nhưng vẫn có vài cách giải quyết cho vấn đề này và mình sẽ hướng dẫn bạn một cách đơn giản nhất:

Cú pháp câu lệnh DROP TABLE LIKE:

delete table in mysql

Bây giờ chúng ta sẽ tạo 4 bảng là test1, test2, test3, test4 trong cơ sở dữ liệu nhé:

drop table mysql

Để xóa cả 4 bảng trên cùng một lúc thì đầu tiên, bạn khai báo hai biến schema và pattern:

Tiếp theo, bạn cần xây dựng câu lệnh DROP TABLE

Về cơ bản, câu lệnh truy vấn sẽ đi đến bảng information_schema, chứa dữ liệu trên tất cả các bảng trong tất cả các cơ sở dữ liệu và nối tất cả các bảng trong cơ sở dữ liệu @schema (classicmodels) khớp với mẫu @pattern (test%) với tiền tố DROP TABLE. Hàm GROUP_CONCAT tạo danh sách các bảng được phân cách bằng dấu phẩy.

Sau đó, bạn có thể hiển thị SQL lên để  xem nó có hoạt động chính xác hay không:

hướng dẫn xóa table trong mysql

Sau đó, chúng ta có thể thực thi câu lệnh đã chuẩn bị trong MySQL như sau:

Đây là toàn bộ code của chúng ta:

Kết luận

Như vậy trong bài ngày hôm nay mình đã hướng dẫn các bạn cách xóa một bảng trong MySQL với DROP TABLE. Trong bài học tiếp theo chúng ta sẽ tìm hiểu về câu lệnh INSERT trong MySQL nhé.

Chúc các bạn học tập tốt!