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

Làm cách nào để sửa đổi kiểu dữ liệu của cột hiện có?

Để sửa đổi kiểu dữ liệu của cột hiện tại, bạn có thể sử dụng CHẾ ĐỘ. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   (
   ClientId varchar(100),
   ClientName varchar(100),
   ClientAge int,
   ClientProjectDeadline timestamp,
   ClientCountryName varchar(100),
   isMarried boolean,
   ClientNumber bigint
   );
Query OK, 0 rows affected (0.70 sec)

Kiểm tra mô tả của bảng -

mysql> desc DemoTable;

Điều này sẽ tạo ra kết quả sau -

+-----------------------+--------------+------+-----+---------+-------+
| Field                 | Type         | Null | Key | Default | Extra |
+-----------------------+--------------+------+-----+---------+-------+
| ClientId              | varchar(100) | YES  |     | NULL    |       |
| ClientName            | varchar(100) | YES  |     | NULL    |       |
| ClientAge             | int(11)      | YES  |     | NULL    |       |
| ClientProjectDeadline | timestamp    | YES  |     | NULL    |       |
| ClientCountryName     | varchar(100) | YES  |     | NULL    |       |
| isMarried             | tinyint(1)   | YES  |     | NULL    |       |
| ClientNumber          | bigint(20)   | YES  |     | NULL    |       |
+-----------------------+--------------+------+-----+---------+-------+
7 rows in set (0.34 sec)

Bây giờ, thay đổi kiểu dữ liệu cột (ClientNumber) bigint thành varchar (20) -

mysql> alter table DemoTable modify ClientNumber varchar(20);
Query OK, 0 rows affected (1.82 sec)
Records: 0 Duplicates: 0 Warnings: 0

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

mysql> desc DemoTable;

Điều này sẽ tạo ra kết quả sau -

+-----------------------+--------------+------+-----+---------+-------+
| Field                 | Type         | Null | Key | Default | Extra |
+-----------------------+--------------+------+-----+---------+-------+
| ClientId              | varchar(100) | YES  |     | NULL    |       |
| ClientName            | varchar(100) | YES  |     | NULL    |       |
| ClientAge             | int(11)      | YES  |     | NULL    |       |
| ClientProjectDeadline | timestamp    | YES  |     | NULL    |       |
| ClientCountryName     | varchar(100) | YES  |     | NULL    |       |
| isMarried             | tinyint(1)   | YES  |     | NULL    |       |
| ClientNumber          | varchar(20)  | YES  |     | NULL    |       |
+-----------------------+--------------+------+-----+---------+-------+
7 rows in set (0.00 sec)

Nhìn vào kết quả đầu ra mẫu ở trên, kiểu dữ liệu đã được thay đổi từ bigint thành varchar (20).