Trong Ngôn ngữ truy vấn có cấu trúc, nếu bạn muốn thêm cột trong bảng hiện có, sau đó sửa đổi bảng hoặc xóa cột khỏi bảng. Tất cả các thao tác này chỉ được phép khi sử dụng câu lệnh ALTER TABLE. Câu lệnh ALTER TABLE cũng cho phép người dùng thêm hoặc bỏ các ràng buộc SQL trên các bảng hiện có trong SQL.
Câu lệnh ALTER TABLE cũng cho phép người dùng đổi tên bảng hiện có.
ALTER TABLE ADD COLUMN câu lệnh trong SQL
Điều này được sử dụng khi bạn cần thêm cột vào bảng hiện có. Trong trường hợp như vậy, thay vì tạo một bảng mới, bạn có thể thêm một cột vào bảng hiện có bằng cách sử dụng từ khóa ADD.
Cú pháp của câu lệnh ALTER TABLE ADD COLUMN trong SQL
ALTER TABLE Table_Name ADD Column_Name Data_Type;
Cú pháp trên được sử dụng để thêm một cột trong bảng hiện có và cho phép người dùng chỉ thêm một trường duy nhất trong bảng.
Để thêm nhiều cột trong bảng hiện có, hãy sử dụng cú pháp sau:
ALTER TABLE Table_Name ADD (Column_Name1 Data_Type, Column_Name2 Data_Type);
Hãy hiểu ALTER TABEL ADD COLUMN trong SQL với các ví dụ.
Ví dụ về ALTER TABLE ADD COLUMN trong SQL
Chúng tôi đã lấy nhiều ví dụ SQL, điều này sẽ giúp bạn hiểu thêm một cột đơn và nhiều cột trong bảng hiện có bằng cách sử dụng câu lệnh ALTER TABLE ADD COLUMN.
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
Bảng 1:Mobile_Plan:
Package_Id | Data_Id | Talktime_Id |
1 | 2 | 1 |
2 | 3 | 2 |
3 | 1 | 3 |
Bảng 2:Data_Plan:
Data_Id | Data_Limit | Data_Price |
1 | 2 | 30 |
2 | 5 | 70 |
3 | 4 | 55 |
Bảng 3:Talktime_Plan:
Talktime_Id | Thời gian thoại _Limit | Thời gian thoại _Giá |
1 | 100 | 150 |
2 | 70 | 105 |
3 | 60 | 90 |
Bảng 4:Khách hàng (Bảng trống)
Ví dụ 1:Viết truy vấn để thêm cột mới Extra_Data_Price trong Bảng Data_Plan.
ALTER TABLE Data_Plan ADD Extra_Data_Price int;
Chúng tôi đã sử dụng câu lệnh ALTER TABLE ADD trong truy vấn trên để thêm cột Extra_Data_Price mới trong bảng Data_Plan. Chúng tôi đã thêm một cột duy nhất trong bảng hiện có.
Bây giờ chúng tôi sẽ sử dụng từ khóa DESC và tên bảng để kiểm tra chéo xem cột Extra_Data_Price đã được thêm vào bảng Data_Plan thành công hay chưa.
DESC Data_Plan;
Field | Loại | Không | Phím | Mặc định | Thêm |
Data_Id | int (11) | KHÔNG | PRI | KHÔNG ĐẦY ĐỦ | |
Data_Limit | int (11) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Data_Price | int (11) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Extra_Data_Price | Int (11) | CÓ |
Ví dụ 2: Viết truy vấn để thêm nhiều cột CustomerId, Customer_Name và Phone_Number trong bảng Khách hàng, bảng này trống, không có cột.
ALTER TABLE Customer ADD (CustomerId int, Customer_Name varchar(20), Phone_Number varchar(10));
Chúng tôi đã sử dụng câu lệnh ALTER TABLE ADD trong truy vấn trên để thêm nhiều cột mới CustomerId, Customer_Name và Phone_Number trong bảng Customer. Chúng tôi đã thêm nhiều cột trong bảng hiện có.
Bây giờ chúng tôi sẽ sử dụng từ khóa DESC và tên bảng để kiểm tra chéo xem các cột CustomerId, Customer_Name và Phone_Number đã được thêm thành công hay chưa trong bảng Khách hàng.
Khách hàngDESC Customer;
Field | Loại | Không | Phím | Mặc định | Thêm |
CustomerId | int (11) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Tên_khách_hàng | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Phone_Number | varchar (10) | CÓ | KHÔNG ĐẦY ĐỦ |
Giả sử bạn muốn thêm các ràng buộc như Khóa chính, Khóa ngoại vào một bảng hiện có. Chúng ta sẽ lấy một ví dụ về việc thêm các ràng buộc Khóa chính và các ràng buộc Khóa ngoài vào bảng hiện có. Chúng ta cũng có thể thêm các ràng buộc đó bằng cách sử dụng câu lệnh ALTER TABLE ADD.
Ví dụ 3: Viết truy vấn để thêm ràng buộc Khóa chính trên tên cột CustomerId trong Bảng khách hàng.
ALTER TABLE Customer ADD Primary Key(CustomerId);
Trong truy vấn trên, chúng tôi đã sử dụng câu lệnh ALTER TABLE ADD để thêm ràng buộc Khóa chính trên tên cột CustomerId trong Bảng khách hàng. Chúng tôi đã sử dụng từ khóa Khóa chính với câu lệnh ALTER TABLE ADD để thêm một ràng buộc vào CustomerId.
Bây giờ chúng tôi sẽ sử dụng từ khóa DESC và tên bảng để kiểm tra chéo xem khóa cột CustomerId có được thay đổi thành PRI trong bảng Khách hàng hay không.
Khách hàngDESC Customer;
Field | Loại | Không | Phím | Mặc định | Thêm |
CustomerId | int (11) | CÓ | PRI | KHÔNG ĐẦY ĐỦ | |
Tên_khách_hàng | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Phone_Number | varchar (10) | CÓ | KHÔNG ĐẦY ĐỦ |
Ví dụ 4: Viết truy vấn để thêm ràng buộc Khoá ngoại vào tên cột Package_Id trong Bảng Khách hàng.
ALTER TABLE Customer ADD (Package_Id int, FOREIGN KEY(Package_Id) references Mobile_Plan(Package_ID));
Trong truy vấn trên, trước tiên chúng tôi đã thêm cột Package_Id trong bảng Khách hàng, sau đó chúng tôi đã sử dụng Khóa ngoại trên cùng một cột Package_Id trong cùng một truy vấn bằng cách sử dụng câu lệnh ALTER TABLE ADD.
Bây giờ chúng tôi sẽ sử dụng từ khóa DESC và tên bảng để kiểm tra chéo xem cột Package_Id đã được thêm vào hay không thành công trong bảng Khách hàng và thay đổi khóa thành MUL.
Khách hàngDESC Customer;
Field | Loại | Không | Phím | Mặc định | Thêm |
CustomerId | int (11) | CÓ | PRI | KHÔNG ĐẦY ĐỦ | |
Tên_khách_hàng | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Phone_Number | varchar (10) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Package_Id | Int (11) | CÓ | MUL | KHÔNG ĐẦY ĐỦ |
Câu lệnh ALTER TABLE MODIFY COLUMN trong SQL
Giả sử bạn muốn cập nhật tên hoặc định nghĩa cột giống như một kiểu dữ liệu. Trong trường hợp đó, chúng ta sẽ sử dụng câu lệnh ALTER TABLE MODIFY để cập nhật kiểu dữ liệu cột của bảng đã tồn tại. Chúng tôi sẽ sử dụng từ khóa MODIFY ngay sau Tên_bảng trong câu lệnh.
Cú pháp của câu lệnh ALTER TABLE MODIFY COLUMN trong SQL
ALTER TABLE Table_Name MODIFY Column_Name Data_Type;
Cú pháp trên được sử dụng để sửa đổi các cột trong bảng hiện có cho phép người dùng chỉ sửa đổi một trường duy nhất.
Để sửa đổi nhiều cột trong bảng hiện có, hãy sử dụng cú pháp bên dưới:
ALTER TABLE Table_Name MODIFY (Column_Name1 Data_Type, Column_Name2 Data_Type);
Hãy hiểu về SỬA ĐỔI NHÃN ALTER trong SQL với các ví dụ.
Ví dụ về cột ALTER TABLE MODIFY trong SQL
Chúng tôi đã lấy nhiều ví dụ SQL để giúp bạn hiểu việc sửa đổi các cột đơn và nhiều cột trong bảng hiện có bằng cách sử dụng câu lệnh ALTER TABLE MODIFY.
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
Bảng 1:Mobile_Plan:
Package_Id | Data_Id | Talktime_Id |
1 | 2 | 1 |
2 | 3 | 2 |
3 | 1 | 3 |
Bảng 2:Data_Plan:
Data_Id | Data_Limit | Data_Price |
1 | 2 | 30 |
2 | 5 | 70 |
3 | 4 | 55 |
Bảng 3:Talktime_Plan:
Talktime_Id | Thời gian thoại _Limit | Thời gian thoại _Giá |
1 | 100 | 150 |
2 | 70 | 105 |
3 | 60 | 90 |
Bảng 4:Khách hàng
CustomerId | Tên_Khách hàng | Phone_Number | Package_Id |
101 | Bhavesh | 9846522021 | 1 |
102 | Mahesh | 7798598272 | 3 |
103 | Anita | 7865222021 | 1 |
Ví dụ 1: Viết truy vấn để cập nhật kích thước của cột Tên khách hàng từ Bảng khách hàng.
ALTER TABLE Customer MODIFY Customer_Name varchar(30);
Trong truy vấn trên, chúng tôi đã sửa đổi kích thước cột Tên_khách hàng từ 20 thành 30. Chúng tôi đã sử dụng câu lệnh ALTER TABLE với từ khoá MODIFY ngay sau tên bảng để sửa đổi cột.
Bây giờ chúng tôi sẽ sử dụng từ khóa DESC và tên bảng để kiểm tra chéo xem kiểu dữ liệu cột Customer_Name có được sửa đổi trong bảng Khách hàng hay không.
Khách hàngDESC Customer;
Field | Loại | Không | Phím | Mặc định | Thêm |
CustomerId | int (11) | CÓ | PRI | KHÔNG ĐẦY ĐỦ | |
Tên_khách_hàng | varchar (30) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Phone_Number | varchar (10) | CÓ | KHÔNG ĐẦY ĐỦ | ||
Package_Id | Int (11) | CÓ | MUL | KHÔNG ĐẦY ĐỦ |
Ví dụ 2: Viết truy vấn để cập nhật loại dữ liệu của cột Talktime_Limit và Talktime_Price từ Bảng Talktime_Plan.
ALTER TABLE Talktime_Plan MODIFY (Talktime_Limit varchar(2), Talktime_Price varchar(2));
Chúng tôi đã sửa đổi cột Talktime_Limit và kiểu dữ liệu Talktime_Price từ int thành varchar trong truy vấn trên. Chúng tôi đã sử dụng câu lệnh ALTER TABLE với từ khóa MODIFY ngay sau tên bảng để sửa đổi cột.
Bây giờ chúng tôi sẽ sử dụng từ khóa DESC và tên bảng để kiểm tra chéo xem cột Talktime_Limit và kiểu dữ liệu Talktime_Price có được sửa đổi hay không trong bảng Talktime_Plan.
DESC Talktime_Plan;
Field | Loại | Không | Phím | Mặc định | Thêm |
TalkTime_Id | int (11) | CÓ | PRI | KHÔNG ĐẦY ĐỦ | |
TalkTime_Limit | varchar (2) | CÓ | KHÔNG ĐẦY ĐỦ | ||
TalkTime_Price | varchar (2) | CÓ | KHÔNG ĐẦY ĐỦ |
Câu lệnh ALTER TABLE DROP COLUMN trong SQL
Điều này được sử dụng khi bạn xóa cột khỏi bảng hiện có. Sau đó, trong tình huống như vậy, thay vì xóa toàn bộ bảng khỏi cơ sở dữ liệu, chúng ta có thể sử dụng từ khóa DROP để bỏ cột.
Cú pháp của câu lệnh ALTER TABLE DROP COLUMN trong SQL
ALTER TABLE Table_Name DROP Column_Name;
Hãy hiểu ALTER TABEL DROP trong SQL với các ví dụ.
Ví dụ về cột ALTER TABLE DROP trong SQL
Chúng tôi đã lấy các ví dụ SQL để giúp bạn hiểu việc sửa đổi các cột đơn và nhiều cột trong bảng hiện có bằng cách sử dụng câu lệnh ALTER TABLE DROP.
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
Bảng 1:Mobile_Plan:
Package_Id | Data_Id | Talktime_Id |
1 | 2 | 1 |
2 | 3 | 2 |
3 | 1 | 3 |
Bảng 2:Data_Plan:
Data_Id | Data_Limit | Data_Price |
1 | 2 | 30 |
2 | 5 | 70 |
3 | 4 | 55 |
Bảng 3:Talktime_Plan:
Talktime_Id | Thời gian thoại _Limit | Thời gian thoại _Giá |
1 | 100 | 150 |
2 | 70 | 105 |
3 | 60 | 90 |
Bảng 4:Khách hàng
CustomerId | Tên_Khách hàng | Phone_Number | Package_Id |
101 | Bhavesh | 9846522021 | 1 |
102 | Mahesh | 7798598272 | 3 |
103 | Anita | 7865222021 | 1 |
Ví dụ 1:Viết truy vấn để loại bỏ Package_Id khỏi bảng Khách hàng.
ALTER TABLE Customer DROP COLUMN Package_Id;
Chúng tôi đã loại bỏ tên cột Package_Id khỏi bảng Khách hàng trong truy vấn ở trên. Chúng tôi đã sử dụng câu lệnh ALTER TABLE DROP để loại bỏ cột khỏi bảng.
Bây giờ chúng tôi sẽ kiểm tra chéo xem cột Package_Id từ bảng Khách hàng đã được xóa thành công hay chưa.
SELECT * FROM CUSTOMER;
CustomerId | Tên_Khách hàng | Phone_Number |
101 | Bhavesh | 9846522021 |
102 | Mahesh | 7798598272 |
103 | Anita | 7865222021 |
Câu lệnh ALTER TABLE RENAME trong SQL
Giả sử chúng ta muốn thay đổi tên của cột hoặc bảng, thì chúng ta sẽ sử dụng từ khóa RENAME để đổi tên các trường hoặc bảng của bảng hiện có.
Cú pháp của câu lệnh ALTER TABLE RENAME trong SQL
ALTER TABLE Table_Name RENAME Column_Name;
Hãy hiểu ALTER TABEL RENAME trong SQL với các ví dụ.
Ví dụ về cột ALTER TABLE RENAME trong SQL
Chúng tôi đã lấy các ví dụ SQL để giúp bạn hiểu việc sửa đổi các cột đơn và nhiều cột trong bảng hiện có bằng cách sử dụng câu lệnh ALTER TABLE RENAME.
Hãy xem xét các bảng sau cùng với các bản ghi đã cho.
CustomerId | Tên_Khách hàng | Phone_Number |
101 | Bhavesh | 9846522021 |
102 | Mahesh | 7798598272 |
103 | Anita | 7865222021 |
Ví dụ 1:Viết truy vấn để thay đổi tên của bảng Khách hàng.
ALTER TABLE Customer RENAME TO CUST;
Trong truy vấn trên, chúng tôi đã đổi tên bảng của bảng Khách hàng thành bảng Cust. Chúng tôi đã sử dụng câu lệnh ALTER TABLE RENAME để đổi tên bảng.
Chúng tôi sẽ kiểm tra lại xem tên của bảng có được thay đổi thành công hay không.
SHOW TABLES;
Ví dụ 1:Viết truy vấn để thay đổi tên của cột CustomerId thành cid từ bảng Cust.
ALTER TABLE Cust RENAME COLUMN CustomerId cid int not null;
Trong truy vấn trên, chúng tôi đã thay đổi tên cột CustomerId thành Cid. Chúng tôi đã sử dụng câu lệnh ALTER TABLE RENAME để đổi tên bảng.
Chúng tôi sẽ kiểm tra lại xem tên của bảng có được thay đổi thành công hay không.
SELECT * FROM CUST;