Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm thế nào để kiểm tra xem một bảng có tồn tại trong MySQL hay không và tạo nếu nó chưa tồn tại?

Nếu bạn cố gắng tạo một bảng và tên bảng đã tồn tại thì MySQL sẽ đưa ra một thông báo cảnh báo. Hãy để chúng tôi xác minh khái niệm này.

Ở đây, chúng tôi đang tạo một bảng đã tồn tại -

mysql> CREATE TABLE IF NOT EXISTS DemoTable
   (
   CustomerId int,
   CustomerName varchar(30),
   CustomerAge int
   );
Query OK, 0 rows affected, 1 warning (0.05 sec)

Tên bảng DemoTable đã có sẵn. Hãy để chúng tôi kiểm tra thông báo cảnh báo.

Sau đây là truy vấn -

mysql> show warnings;

Điều này sẽ tạo ra kết quả sau, tức là thông báo cảnh báo -

+-------+------+------------------------------------+
| Level | Code | Message                            |
+-------+------+------------------------------------+
| Note  | 1050 | Table 'demotable' already exists   |
+-------+------+------------------------------------+
1 row in set (0.00 sec)

Hãy để chúng tôi thay đổi tên bảng và tạo một bảng chưa tồn tại -

mysql> CREATE TABLE IF NOT EXISTS DemoTable2
   (
   CustomerId int,
   CustomerName varchar(20),
   CustomerAge int
   );
Query OK, 0 rows affected (0.56 sec)

Đã tạo thành công bảng ở trên vì nó chưa tồn tại.

Sau đây là truy vấn để chèn các bản ghi trong bảng bằng cách sử dụng lệnh insert -

mysql> insert into DemoTable2 values(101,'Chris',23);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable2 values(102,'Robert',24);
Query OK, 1 row affected (0.12 sec)

Sau đây là truy vấn để hiển thị các bản ghi từ bảng bằng lệnh select -

mysql> select *from DemoTable2;

Điều này sẽ tạo ra kết quả sau

+------------+--------------+-------------+
| CustomerId | CustomerName | CustomerAge |
+------------+--------------+-------------+
| 101        | Chris        | 23          |
| 102        | Robert       | 24          |
+------------+--------------+-------------+
2 rows in set (0.00 sec)