Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để thay đổi một Cột MySQL từ varchar (30) thành varchar (100)?

Bạn cần sử dụng lệnh ALTER TABLE cùng với MODIFY

Cú pháp như sau

ALTER TABLE yourTableName MODIFY COLUMN yourColumnName varchar(100) NOT NULL;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau

mysql> create table syntaxOfAlterCommandDemo
   -> (
   -> UserId int,
   -> UserName varchar(30),
   -> UserAge int,
   -> UserCityName varchar(50)
   -> );
Query OK, 0 rows affected (0.51 sec)

Hãy để chúng tôi kiểm tra mô tả của bảng.

Truy vấn như sau

mysql> desc syntaxOfAlterCommandDemo;

Sau đây là kết quả

+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| UserId       | int(11)     | YES  |     | NULL    |       |
| UserName     | varchar(30) | YES  |     | NULL    |       |
| UserAge      | int(11)     | YES  |     | NULL    |       |
| UserCityName | varchar(50) | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
4 rows in set (0.04 sec)

Bây giờ chúng ta hãy thay đổi cột UserName từ varchar (30) thành varchar (100). Hãy nhớ rằng, ngay bây giờ chúng ta đã đặt cột Tên người dùng thành varchar (30). Truy vấn như sau để thay đổi cột

mysql> alter table syntaxOfAlterCommandDemo modify column UserName varchar(100) NOT NULL;
Query OK, 0 rows affected (1.36 sec)
Records: 0 Duplicates: 0 Warnings: 0

Hãy để chúng tôi kiểm tra mô tả bảng một lần nữa.

Truy vấn như sau

mysql> desc syntaxOfAlterCommandDemo;

Sau đây là kết quả

+--------------+--------------+------+-----+---------+-------+
| Field        | Type         | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| UserId       | int(11)      | YES  |     | NULL    |       |
| UserName     | varchar(100) | NO   |     | NULL    |       |
| UserAge      | int(11)      | YES  |     | NULL    |       |
| UserCityName | varchar(50)  | YES  |     | NULL    |       |
+--------------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

Nhìn vào kết quả đầu ra mẫu ở trên, cột UserName bây giờ là varchar (100).