MySQL - 如何更新十进制列以允许更多数字?

时间:2013-11-04 17:12:35

标签: mysql sql-update decimal alter-table

我是MySQL的初学者,我不小心创建了一个名为

的列的表
(price decimal(2,2));

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

我似乎无法正确理解语法。

非常感谢。

4 个答案:

答案 0 :(得分:30)

ALTER TABLE mytable MODIFY COLUMN mycolumn newtype

示例:

ALTER TABLE YourTableNameHere MODIFY COLUMN YourColumnNameHere decimal(4,2)

答案 1 :(得分:7)

使用ALTER TABLE命令只需MODIFY

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

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

答案 2 :(得分:3)

这不是'更新'的问题,而是改变你的桌子结构。为此,请将ALTER TABLEMODIFY子句一起使用:

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

sqlfiddle demo

答案 3 :(得分:1)

使用更改

ALTER TABLE table_name CHANGE OLD_COLUMN_NAME OLD_COLUMN_NAME datatype;

示例

ALTER TABLE table_name CHANGE price price decimal(4,2);