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

Đổi tên cột từ StudentName thành FirstName trong MySQL

Sử dụng CHANGE với lệnh ALTER TABLE.

Tạo bảng demo

mysql> create table DemoTable (
    -> StudentName varchar(100),
    -> Age int
    -> );
Query OK, 0 rows affected (0.84 sec)

Kiểm tra cấu trúc bảng ban đầu

mysql> desc DemoTable;

Kết quả

+----------------+--------------+------+-----+---------+-------+
| Field          | Type         | Null | Key | Default | Extra |
+----------------+--------------+------+-----+---------+-------+
| StudentName    | varchar(100) | YES  |     | NULL    |       |
| Age            | int(11)      | YES  |     | NULL    |       |
+----------------+--------------+------+-----+---------+-------+
2 rows in set (0.25 sec)

Thực hiện ALTER TABLE - Đổi tên cột và thêm cột mới

mysql> alter table DemoTable
    -> add column Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> add column CountryName varchar(100) after Age,
    -> change column StudentName FirstName varchar(200);
Query OK, 0 rows affected (1.51 sec)
Records: 0 Duplicates: 0 Warnings: 0

Kiểm tra cấu trúc bảng sau khi thay đổi

mysql> desc DemoTable;

Kết quả - Cột StudentName đã đổi thành FirstName

+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| FirstName   | varchar(200) | YES  |     | NULL    |                |
| Age         | int(11)      | YES  |     | NULL    |                |
| CountryName | varchar(100) | YES  |     | NULL    |                |
| Id          | int(11)      | NO   | PRI | NULL    | auto_increment |
+-------------+--------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

Cú pháp CHANGE COLUMN:

ALTER TABLE ten_bang CHANGE COLUMN ten_cu ten_moi kieu_du_lieu [rang_buoc];

Lưu ý: Phải chỉ định lại kiểu dữ liệu (varchar(200)) ngay cả khi không muốn thay đổi kiểu. Có thể dùng MODIFY COLUMN nếu chỉ thay đổi kiểu/ràng buộc mà không đổi tên.