Để tạo một khóa duy nhất trong bảng MySQL đề cập đến ngày tháng, bạn có thể sử dụng cú pháp sau -
CREATE TABLE yourTableName ( yourIdColumnName dataType, yourDateColumnName dataType, . . . N UNIQUE KEY(yourIdColumnName, yourDateColumnName ) );
Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -
mysql> create table keyReferringToDateDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Client_Id int, -> ClientProjectDeadline date, -> ClientName varchar(100), -> ClientAge int, -> ClientCountryName varchar(20) , -> UNIQUE KEY(Client_Id,ClientProjectDeadline) -> ); Query OK, 0 rows affected (0.63 sec)
Hãy để chúng tôi kiểm tra tất cả các chi tiết của bảng bằng lệnh SHOW CREATE. Truy vấn như sau -
mysql> show create table keyReferringToDateDemo;
Đây là kết quả -
+------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------+ | Table | Create Table | +------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | keyReferringToDateDemo | CREATE TABLE `keyreferringtodatedemo` (`Id` int(11) NOT NULL AUTO_INCREMENT,`Client_Id` int(11) DEFAULT NULL,`ClientProjectDeadline` date DEFAULT NULL,`ClientName` varchar(100) DEFAULT NULL,`ClientAge` int(11) DEFAULT NULL,`ClientCountryName` varchar(20) DEFAULT NULL,PRIMARY KEY (`Id`),UNIQUE KEY `Client_Id` (`Client_Id`,`ClientProjectDeadline`) ) ENGINE =InnoDB DEFAULT CHARSET =utf8 | +------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)