Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL - Làm thế nào để thả bảng nếu tồn tại trong cơ sở dữ liệu?

Trong bài đăng này SQL Server - 2016 - Mệnh đề “Drop if Exists” của T-SQL Nâng cao, chúng tôi đã thấy tính năng mới được giới thiệu trong phiên bản SQL Server 2016. Một người bạn của tôi gần đây đã hỏi tôi câu hỏi rằng làm thế nào để bỏ bảng nếu tồn tại trong cơ sở dữ liệu MySQL? Không có gì ngạc nhiên khi thấy rằng không có nhiều người biết về sự tồn tại của tính năng này. MySQL đã có tính năng này một thời gian và nếu bạn là MySQL DBA, bạn có thể thấy thú vị khi SQL Server vừa giới thiệu tính năng này.

Hãy để chúng tôi xem ví dụ này hoạt động ngay bây giờ. Đầu tiên, chúng tôi sẽ tạo một bảng mẫu.

CREATE TABLE test(id INT,name VARCHAR(100));

Nếu chúng ta phải thả bảng trên, chúng ta có thể thực thi tập lệnh sau và thả nó.

DROP TABLE IF EXISTS test;

Tập lệnh trên bỏ bảng có tên kiểm tra nếu tồn tại, nếu không nó sẽ hiển thị cảnh báo chứ không phải lỗi. Điều này rất quan trọng để hiểu rằng vì nó không hiển thị lỗi, chúng tôi có thể dễ dàng xử lý cảnh báo trong mã của chúng tôi. Điều này rất hữu ích nếu bạn không chắc chắn về sự tồn tại của bảng.

Không chỉ các bảng, mà MySQL cũng có sẵn tính năng tương tự cho các thủ tục được lưu trữ. Hãy để chúng tôi xem một ví dụ nhanh về tương tự.

Đây là một tập lệnh mà bạn có thể sử dụng để tạo các thủ tục được lưu trữ.

CREATE PROCEDURE test_proc
AS
BEGIN
SELECT 1 AS number;
END;

Sau khi tạo quy trình trên, bạn có thể sử dụng tập lệnh sau để loại bỏ nó.

DROP PROCEDURE IF EXISTS test_proc;

Hãy nhớ rằng, giống như table, nó sẽ loại bỏ thủ tục đã lưu trữ nếu có tồn tại, nếu không, nó sẽ chỉ trả về một cảnh báo. Thực sự thú vị khi thấy MySQL đã có tính năng này được một thời gian, trong khi SQL Server mới giới thiệu tính năng này trong năm nay.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo một bảng tạm thời trong một câu lệnh SELECT mà không có một bảng CREATE TABLE riêng biệt

  2. Cách tạo CRUD đơn giản bằng PHP và MySQL một cách dễ dàng

  3. Số lần đếm Mysql của chuỗi con, sau đó sắp xếp theo thứ tự

  4. Tăng tốc độ xuất và nhập mysql

  5. Làm cách nào để đặt số hàng tối đa trong bảng MySQL?