Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Hai cột làm khóa chính với AUTO_INCREMENT trong MySQL

Chỉ engine MyISAM hỗ trợ AUTO_INCREMENT trên cột thứ hai của khóa chính tổ hợp.

Ví dụ:

CREATE TABLE TwoPrimaryKeyTableDemo (
    Result ENUM('First','Second','Third','Fail') NOT NULL,
    StudentId INT NOT NULL AUTO_INCREMENT,
    StudentName VARCHAR(200) NOT NULL,
    PRIMARY KEY(Result, StudentId)
) ENGINE=MyISAM;

Chèn dữ liệu chỉ điền StudentName và Result, StudentId tự tăng theo từng nhóm Result.

Kết quả:

+--------+-----------+-------------+
| Result | StudentId | StudentName |
+--------+-----------+-------------+
| First  | 1         | Carol       |
| Second | 1         | Johnson     |
| Third  | 1         | Smith       |
| Fail   | 1         | John        |
| Second | 2         | Carol       |
| Third  | 2         | Johnson     |
| Fail   | 2         | Carol       |
+--------+-----------+-------------+

Lưu ý: InnoDB không hỗ trợ tính năng này.