Trong SQL Server, câu lệnh ALTER TABLE được dùng để thêm cột, sửa cột, xóa cột, đổi tên cột hoặc đổi tên bảng.
Thêm cột vào bảng trong SQL Server
Cú pháp
ALTER TABLE ten_bang
ADD ten_cot dinh_nghia_cot;
Ví dụ
ALTER TABLE nhanvien
ADD ho VARCHAR(50);
Lệnh ALTER TABLE trên sẽ thêm cột ho vào bảng.
Thêm nhiều cột vào bảng trong SQL Server
Cú pháp
ALTER TABLE ten_bang
ADD cot1 dinh_nghia_cot,
cot2 dinh_nghia_cot,
…
cot_n dinh_nghia_cot;
Ví dụ
ALTER TABLE nhanvien
ADD ho VARCHAR(50),
ten VARCHAR(40);
Lệnh ALTER TABLE trong ví dụ này sẽ thêm hai cột là ho kiểu VARCHAR(50) và ten kiểu VARCHAR(40) vào bảng.
Sửa cột trong bảng trong SQL Server
Cú pháp
ALTER TABLE ten_bang
ALTER COLUMN ten_cot kieu_cot;
Ví dụ
ALTER TABLE nhanvien
ALTER COLUMN ho VARCHAR(75) NOT NULL;
Lệnh trên sẽ sửa cột ho thành kiểu dữ liệu VARCHAR(75) và không chấp nhận giá trị NULL.
Xóa cột của bảng trong SQL Server
Cú pháp
ALTER TABLE ten_bang
DROP COLUMN ten_cot;
Ví dụ
ALTER TABLE nhanvien
DROP COLUMN ho;
Lệnh ALTER TABLE trên sẽ xóa cột ho khỏi bảng.
Đổi tên cột của bảng trong SQL Server
Bạn có thể dùng lệnh ALTER TABLE để đổi tên cột trong bảng. Có thể dùng sp_rename, nhưng Microsoft khuyến khích xóa và tạo lại bảng để tránh làm hỏng script và thủ tục lưu trữ.
Cú pháp
sp_rename 'ten_bang.ten_cot_cu', 'ten_cot_moi', 'COLUMN';
Ví dụ
sp_rename 'nhanvien.ho', 'ho_nhanvien', 'COLUMN';
Ví dụ này dùng sp_rename sẽ đổi tên cột trong bảng thành ho_nhanvien.
Đổi tên bảng trong SQL Server
Không thể dùng lệnh ALTER TABLE để đổi tên bảng trong SQL Server. Tuy nhiên, bạn có thể dùng sp_rename, nhưng Microsoft khuyên nên xóa và tạo lại bảng để script và thủ tục lưu trữ không bị hỏng.
Cú pháp
sp_rename 'ten_bang_cu', 'ten_bang_moi';
Ví dụ
sp_rename 'nhanvien', 'nv';
Lệnh này đổi tên bảng thành nv.