22

我是 MySQL 的初学者,我不小心创建了一个表,其中有一列名为

(price decimal(2,2));

它需要decimal(4,2)允许 4 位数字。既然我已经创建了它,那么将该十进制值更新为 的最简单方法是decimal(4,2)什么?还是我需要完全删除该列,并使用正确的数字重新创建它?

4

4 回答 4

46
ALTER TABLE mytable MODIFY COLUMN mycolumn newtype

例子:

ALTER TABLE YourTableNameHere MODIFY COLUMN YourColumnNameHere decimal(4,2)
于 2013-11-04T17:17:35.010 回答
12

只需ALTER TABLE使用以下MODIFY命令:

ALTER TABLE `table` MODIFY `price` DECIMAL(4,2)

这将允许 2 个小数和 2 个完整数字(最多99.99)。如果您想要 4 个完整数字,请6,2改用(最多允许9999.99)。

于 2013-11-04T17:15:51.383 回答
4

这不是“更新”的问题,而是更改表结构的问题。为此,请使用带有子句的ALTER TABLE :MODIFY

ALTER TABLE YourTableName MODIFY COLUMN price DECIMAL(4,2);

sqlfiddle demo

于 2013-11-04T17:16:02.177 回答
1

使用改变

ALTER TABLE table_name CHANGE OLD_COLUMN_NAME OLD_COLUMN_NAME datatype;

一个例子

ALTER TABLE table_name CHANGE price price decimal(4,2);
于 2016-12-26T12:44:15.797 回答