Điều đầu tiên, nếu bạn muốn chơi cùng với hướng dẫn này, đây là một khối mã để tạo cơ sở dữ liệu và bảng
create database sandbox;
use sandbox;
CREATE TABLE employee_id [
emp_nm varchar[30] not null,
emp_id varchar[8],
b_emp_id varchar[8],
PRIMARY KEY[emp_nm] ];
Để kiểm tra xem một bảng có tồn tại trong MySql hay không, bạn có thể sử dụng INFORMATION_SCHEMA. TABLES bảng
Chạy đoạn mã sau, tạo ra kết quả bên dưới
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
SELECT IF[ EXISTS[
SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'employee_id'], 1, 0];
Và nếu tôi thử với tên bảng không tồn tại.
Một trong những cách sử dụng phổ biến hơn mà tôi tìm thấy cho điều này khi tôi cần tạo một bảng trong tập lệnh. Tôi muốn đảm bảo rằng một bảng có cùng tên chưa tồn tại, nếu không truy vấn của tôi sẽ không thành công. Vì vậy, tôi viết một truy vấn như bên dưới
Để kiểm tra xem một hàng có tồn tại trong bảng MySQL hay không, hãy sử dụng điều kiện tồn tại. Điều kiện tồn tại có thể được sử dụng với truy vấn con. Nó trả về true khi hàng tồn tại trong bảng, nếu không thì trả về false. Đúng được biểu thị ở dạng 1 và sai được biểu thị bằng 0
Để hiểu rõ hơn, trước tiên chúng ta sẽ tạo một bảng với sự trợ giúp của lệnh CREATE. Sau đây là truy vấn để tạo một bảng -
mysql> CREATE table ExistsRowDemo -> [ -> ExistId int, -> Name varchar[100] -> ]; Query OK, 0 rows affected [0.53 sec]
Sau khi tạo bảng thành công, chúng ta sẽ chèn một số bản ghi với sự trợ giúp của lệnh INSERT. Truy vấn để chèn bản ghi vào bảng -
mysql> INSERT into ExistsRowDemo values[100,'John']; Query OK, 1 row affected [0.16 sec] mysql> INSERT into ExistsRowDemo values[101,'Bob']; Query OK, 1 row affected [0.17 sec] mysql> INSERT into ExistsRowDemo values[103,'Carol']; Query OK, 1 row affected [0.20 sec] mysql> INSERT into ExistsRowDemo values[104,'David']; Query OK, 1 row affected [0.13 sec]
Sau khi chèn tất cả các bản ghi, chúng ta có thể hiển thị chúng với sự trợ giúp của lệnh SELECT như sau:
mysql> SELECT * from ExistsRowDemo;
Sau đây là đầu ra -
+---------+-------+ | ExistId | Name | +---------+-------+ | 100 | John | | 101 | Bob | | 103 | Carol | | 104 | David | +---------+-------+ 4 rows in set [0.00 sec]
Chúng tôi đã thêm một số bản ghi vào bảng. Cú pháp để kiểm tra xem một hàng có tồn tại trong bảng hay không với sự trợ giúp của điều kiện EXISTS như sau:
SELECT EXISTS[SELECT * FROM yourTableName WHERE yourCondition];
Tôi đang áp dụng truy vấn trên để nhận được kết quả -
Trường hợp 1
Trong trường hợp này, tôi đưa ra một điều kiện khi hàng tồn tại. Hãy để chúng tôi áp dụng cú pháp trên để kiểm tra xem hàng có tồn tại hay không
mysql> SELECT EXISTS[SELECT * from ExistsRowDemo WHERE ExistId=104];
Sau đây là đầu ra -
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
0Từ đầu ra mẫu ở trên, rõ ràng là hàng tồn tại, vì giá trị chúng tôi nhận được là 1. Điều này có nghĩa là ĐÚNG
Để kiểm tra một bảng tồn tại trong MySQL, bạn có thể sử dụng INFORMATION_SCHEMA. NHỮNG CÁI BÀN. Trước tiên chúng ta hãy tạo một bảng -
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
1Sau đây là truy vấn để chèn một số bản ghi vào bảng bằng cách sử dụng lệnh chèn -
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
2Sau đây là truy vấn để hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select -
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
3Điều này sẽ tạo ra đầu ra sau -
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
4Sau đây là truy vấn để kiểm tra xem một bảng có tồn tại trong MySQL hay không −
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
5Theo các trạng thái đầu ra, bảng “Client_information“ tồn tại -
Select *
from INFORMATION_SCHEMA.TABLES
where table_schema = 'Sandbox';
6