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)
-> );
Query OK, 0 rows affected (0.64 sec)
现在您可以使用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);
Query OK, 0 rows affected (2.46 sec)
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)。
阅读更多:MySQL 教程