要更新小数列以允许更多位数,请使用MODIFY COLUMN。语法如下:ALTER TABLE MODIFY COLUMN yourColumnName DECIMAL(yourIntValue,yourIntValue);
为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table allowDecimalWithMoreDigit
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> Salary DECIMAL(3,2),
-> PRIMARY KEY(Id)
-> );
现在,您可以使用DESC命令检查表的描述。语法如下:DESC yourTableName;
现在,您可以使用上述命令检查表的描述。查询如下:mysql> desc allowDecimalWithMoreDigit;
以下是输出:+--------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+----------------+
| Id | int(11) | NO | PRI | NULL | auto_increment |
| Salary | decimal(3,2) | YES | | NULL | |
+--------+--------------+------+-----+---------+----------------+
2 rows in set (0.18 sec)
查看示例输出,Salary列具有DECIMAL(3,2)。现在,您可以使用带有ALTER命令的MODIFY COLUMN来更改DECIMAL(10,4)。查询如下:mysql> alter table allowDecimalWithMoreDigit modify column Salary DECIMAL(10,4);
Records: 0 Duplicates: 0 Warnings: 0
现在再次检查表说明。查询如下:mysql> desc allowDecimalWithMoreDigit;
以下是输出:+--------+---------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+---------------+------+-----+---------+----------------+
| Id | int(11) | NO | PRI | NULL | auto_increment |
| Salary | decimal(10,4) | YES | | NULL | |
+--------+---------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
查看示例输出,Salary数据类型DECIMAL(3,2)已更改为DECIMAL(10,4)。