Header Ads Widget

Thay đổi cấu trúc table với lệnh ALTER

Lệnh ALTER của MySQL rất hữu dụng khi ta cần thay đổi một số thuộc tính cũng như cấu trúc của các table. Sau đây là một số ví dụ về cách sử dụng lệnh ALTER:
Thêm/Xóa trường:
Ví dụ 1:
Lệnh sau sẽ xóa (Alter Table … Drop …) trường HSL khỏi table lylich:
mysql>ALTER TABLE lylich  DROP HSL;
Ví dụ 2:
Lệnh sau sẽ thêm (Alter Table … Add …) trường HSL vào table lylich:
mysql>ALTER TABLE lylich ADD HSL INT;
Nhớ là khi thêm trường vào table ta đồng thời phải chỉ rõ kiểu dữ liệu của nó. Trường HSL trong trường hợp này có kiểu dữ liệu là INT.
Ví dụ 3:
mysql>ALTER TABLE lylich ADD HSL INT FIRST;
mysql>ALTER TABLE lylich ADD HSL INT AFTER HS_Thue;
Với lệnh trên, trường HSL được thêm vào vị trí đầu tiên của table (Add HSL INT First). Với lệnh dưới, trường HSL được thêm vào sau trường HS_Thue.
Thay đổi thuộc tính của trường:
Để thay đổi một số định nghĩa của trường ta sử dụng các mệnh đề MODIFY, CHANGE trong câu lệnh ALTER.
Ví dụ 1:
Lệnh sau thay đổi thuộc tính (Alter Table … Modify …) của trường Ten. Kiểu dữ liệu mới của trường này là Char(10).
mysql> ALTER TABLE lylich MODIFY Ten CHAR(10);
Ví dụ 2:
Lệnh sau thay đổi thuộc tính (Alter Table … Change …) của trường TongTN thành TongThuNhap. Kiểu dữ liệu mới của trường này là BigInt.
mysql>ALTER TABLE lylich CHANGE TongTN TongThuNhap BIGINT;
Ví dụ 3:
Lệnh này tương tự lệnh trên nhưng chỉ thay đổi kiểu dữ liệu của trường TongTN. Kiểu mới là Int.
mysql>ALTER TABLE lylich CHANGE  TongTN TongTN INT;
Tác động lên các giá trị NULL và các thuộc tính default:
Ví dụ 1:
mysql>ALTER TABLE lylich
-> MODIFY TienLuong BIGINT NOT NULL DEFAULT 100;
Lệnh trên gán thuộc tính Not Null và giá trị Default bằng 100 cho trường TienLuong của table lylich của cơ sở dữ liệu đang mở.
Thay đổi giá trị default của trường:
Ta có thể sử dụng lệnh Alter để thay đổi giá trị default của bất kỳ trường nào trong table:
Ví dụ 1:
mysql>ALTER TABLE lylich ALTER HSL SET DEFAULT 0.05;
Sử dụng lệnh Alter với từ khóa Set Default để thiết lập giá trị default cho trường HSL trong table lylich.
Ví dụ 2:
mysql>ALTER TABLE lylich ALTER HSL DROP DEFAULT;
Sử dụng lệnh Alter với từ khóa Drop Default để xóa giá trị default của trường HSL trong table lylich.
Đổi tên table:
Ví dụ 1:
mysql>ALTER TABLE lylich RENAME TO lylichCB;
Để đổi tên của table trong cơ sở dữ liệu đang mở ta sử dụng lệnh Alter Table với từ khóa Rename to.

Nhận xét