Để đặt chỉ mục (index) cho cột khiến hiển thị Key = MUL trong DESC, sử dụng ADD KEY hoặc ADD INDEX.
Cú pháp
ALTER TABLE ten_bang MODIFY COLUMN ten_cot kieu_du_lieu, ADD KEY (ten_cot);
Ví dụ minh họa
Tạo bảng ban đầu (chưa có index):
mysql> CREATE TABLE GiangVien (
-> GiangVien_Id INT,
-> TenGiangVien VARCHAR(30),
-> TenKhoaHoc VARCHAR(100)
-> );
Kiểm tra cấu trúc (DESC) - cột Key trống:
+-----------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------------------+--------------+------+-----+---------+-------+ | GiangVien_Id | int(11) | YES | | NULL | | | TenGiangVien | varchar(30) | YES | | NULL | | | TenKhoaHoc | varchar(100) | YES | | NULL | | +-----------------------+--------------+------+-----+---------+-------+
Thêm index cho cột GiangVien_Id (Key = MUL)
mysql> ALTER TABLE GiangVien
-> MODIFY COLUMN GiangVien_Id INT NOT NULL AUTO_INCREMENT,
-> ADD KEY (GiangVien_Id);
Kiểm tra lại:
+-----------------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------------+--------------+------+-----+---------+----------------+ | GiangVien_Id | int(11) | NO | MUL | NULL | auto_increment | | TenGiangVien | varchar(30) | YES | | NULL | | | TenKhoaHoc | varchar(100) | YES | | NULL | | +-----------------------+--------------+------+-----+---------+----------------+
Thêm index cho cột không phải khóa chính (TenGiangVien)
mysql> ALTER TABLE GiangVien
-> MODIFY COLUMN TenGiangVien VARCHAR(30) NOT NULL,
-> ADD KEY (TenGiangVien);
Kết quả: cả hai cột đều có Key = MUL.
Giải thích: MUL (Multiple) nghĩa là cột có index non-unique (cho phép giá trị trùng lặp), khác với PRI (Primary Key) và UNI (Unique Key).