Để lấy tên cơ sở dữ liệu hiện tại, bạn có thể sử dụng SELECT DATABASE():
SELECT DATABASE();
Cú pháp để xóa cơ sở dữ liệu hiện tại bằng prepared statement:
SET @tenBien = DATABASE();
SELECT @tenBien;
SET @cauLenhSQL = CONCAT('DROP DATABASE ', @tenBien);
PREPARE stmt FROM @cauLenhSQL;
EXECUTE stmt;
Ví dụ thực thi các lệnh trên để lấy và xóa cơ sở dữ liệu hiện tại:
mysql> SET @currentDatabase = DATABASE();
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @currentDatabase;
+------------------+
| @currentDatabase |
+------------------+
| employeeonboard |
+------------------+
1 row in set (0.00 sec)
mysql> SET @sqlQuery = CONCAT('DROP DATABASE ', @currentDatabase);
Query OK, 0 rows affected (0.00 sec)
mysql> PREPARE stmt FROM @sqlQuery;
Query OK, 0 rows affected (0.04 sec)
Statement prepared
mysql> EXECUTE stmt;
Query OK, 0 rows affected (0.56 sec)
Để kiểm tra xem cơ sở dữ liệu còn tồn tại hay không, sử dụng lại SELECT DATABASE():
mysql> SELECT DATABASE();
Kết quả trả về NULL cho thấy cơ sở dữ liệu đã bị xóa:
+------------+
| DATABASE() |
+------------+
| NULL |
+------------+
1 row in set (0.00 sec)