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

Làm thế nào để xác định khóa chính tổng hợp trong bất kỳ bảng cơ sở dữ liệu MySQL nào?

Bạn có thể sử dụng hàm tổng hợp đếm (*). Nếu nó trả về giá trị lớn hơn 1, điều đó có nghĩa là bảng có khóa chính tổng hợp.

Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1324
   -> (
   -> StudentId int,
   -> StudentName varchar(20),
   -> StudentAge int,
   -> StudentCountryName varchar(20)
   -> );
Query OK, 0 rows affected (0.52 sec)

Đây là truy vấn để thêm khóa chính tổng hợp -

mysql> alter table DemoTable1324 ADD CONSTRAINT constr_IdAgeCountry PRIMARY KEY (StudentId, StudentAge,StudentCountryName);
Query OK, 0 rows affected (1.29 sec)
Records: 0 Duplicates: 0 Warnings: 0

Sau đây là truy vấn để xác định khóa chính tổng hợp trong bất kỳ bảng cơ sở dữ liệu MySQL nào -

mysql> select count(*) AS Total
   -> from information_schema.KEY_COLUMN_USAGE
   -> where table_name='DemoTable1324' and table_schema=database();

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

+-------+
| Total |
+-------+
|     3 |
+-------+
1 row in set, 2 warnings (0.76 sec)