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

Thay đổi cột trong MySQL từ int thành double?

Để thay đổi cột trong MySQL từ int thành double, bạn cần sử dụng lệnh ALTER TABLE.

Cú pháp như sau:

ALTER TABLE yourTableName modify column yourColumnName DOUBLE NOT NULL;

Nếu bạn muốn giá trị NULL thì hãy loại bỏ NOT NULL khỏi cú pháp trên. Cú pháp như sau:

ALTER TABLE yourTableName modify column yourColumnName DOUBLE;

Để 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 IntToDoubleDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(10),
   -> CylinderVolume int,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.63 sec)

Kiểm tra mô tả của bảng bằng lệnh DESC. Cú pháp như sau:

DESC yourTableName;

Áp dụng truy vấn trên cho bảng của bạn để nhận mô tả của bảng:

mysql> desc IntToDoubleDemo;

Sau đây là kết quả:

+----------------+-------------+------+-----+---------+----------------+
| Field          | Type        | Null | Key | Default | Extra          |
+----------------+-------------+------+-----+---------+----------------+
| Id             | int(11)     | NO   | PRI | NULL    | auto_increment |
| Name           | varchar(10) | YES  |     | NULL    |                |
| CylinderVolume | int(11)     | YES  |     | NULL    |                |
+----------------+-------------+------+-----+---------+----------------+
3 rows in set (0.18 sec)

Nhìn vào kết quả đầu ra mẫu ở trên, trường ‘CylinderVolume’ là một kiểu int. Bây giờ bạn có thể chuyển đổi từ int sang double.

Thay đổi cột trong MySQL từ int thành double. Truy vấn như sau:

mysql> alter table IntToDoubleDemo MODIFY COLUMN CylinderVolume double NOT NULL;
Query OK, 0 rows affected (2.79 sec)
Records: 0 Duplicates: 0 Warnings: 0

Một lần nữa kiểm tra mô tả của bảng. Truy vấn như sau:

mysql> desc IntToDoubleDemo\G

Sau đây là kết quả:

*************************** 1. row ***************************
Field: Id
Type: int(11)
Null: NO
Key: PRI
Default: NULL
Extra: auto_increment
*************************** 2. row ***************************
Field: Name
Type: varchar(10)
Null: YES
Key:
Default: NULL
Extra:
*************************** 3. row ***************************
Field: CylinderVolume
Type: double
Null: NO
Key:
Default: NULL
Extra:
3 rows in set (0.00 sec)