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

Làm cách nào để hiển thị các ràng buộc duy nhất của một bảng trong MySQL?

Bạn có thể hiển thị các ràng buộc duy nhất của một bảng trong MySQL bằng information_schema.table_constraints.

Cú pháp như sau.

SELECT DISTINCT CONSTRAINT_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE
TABLE_NAME = ’yourTableName’ AND CONSTRAINT_TYPE = ’UNIQUE’;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng với ràng buộc DUY NHẤT -

mysql> create table UniqueConstraint
   -> (
   -> Id int,
   -> FirstName varchar(30),
   -> LastName varchar(30),
   -> constraint uniqueFirstNameAndLastName UNIQUE(FirstName,LastName)
   -> );
Query OK, 0 rows affected (0.74 sec)

Thực hiện cú pháp trên để hiển thị tên của ràng buộc là một ràng buộc duy nhất từ ​​một bảng MySQL. Truy vấn như sau -

mysql> select distinct CONSTRAINT_NAME
   -> from information_schema.TABLE_CONSTRAINTS
   -> where table_name = 'UniqueConstraint' and constraint_type = 'UNIQUE';

Sau đây là kết quả -

| CONSTRAINT_NAME            |
+----------------------------+
| uniqueFirstNameAndLastName |
+----------------------------+
1 row in set, 2 warnings (0.01 sec)

Nếu bạn muốn hiển thị tất cả các ràng buộc của bảng MySQL, hãy sử dụng truy vấn sau.

mysql> SELECT DISTINCT CONSTRAINT_NAME
   -> FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
   -> WHERE CONSTRAINT_SCHEMA = 'MySQL'\G

Sau đây là kết quả -

*************************** 1. row ***************************
CONSTRAINT_NAME − PRIMARY
*************************** 2. row ***************************
CONSTRAINT_NAME − name
2 rows in set, 2 warnings (0.01 sec)