如何更新小数列以在MySQL中允许更多位数?

要更新小数列以允许更多位数,请使用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)。