MySQL+;phpMyAdmin十进制每次默认为零
当我向表中添加新列并将数据类型设置为MySQL+;phpMyAdmin十进制每次默认为零,mysql,phpmyadmin,decimal,Mysql,Phpmyadmin,Decimal,当我向表中添加新列并将数据类型设置为decimal,例如10.2,保存后将其转换为10.0 我该怎么做?是否有人可以提供SQL请求来创建具有十进制数据类型的表?我想运行它,看看它是否能像这样工作。检查您的表架构。对于十进制数据类型,十进制数(D)是必需的 DECIMAL(M,D)-一种未打包的浮点数,不能无符号。定义显示长度(M)和n小数位数(D)是必需的 示例模式 Create Table Stu( id int(11) NOT NULL auto_increment, field_na
decimal
,例如10.2
,保存后将其转换为10.0
我该怎么做?是否有人可以提供SQL请求来创建具有十进制数据类型的表?我想运行它,看看它是否能像这样工作。检查您的表架构。对于十进制数据类型,
十进制数(D)
是必需的
DECIMAL(M,D)
-一种未打包的浮点数,不能无符号。定义显示长度(M)
和n小数位数(D)
是必需的
示例模式
Create Table Stu(
id int(11) NOT NULL auto_increment,
field_name decimal(10,2) default NULL
);
在使用phpmyadmin界面编辑表时,我遇到了类似的问题。每次我尝试将字段decimal(6)更改为decimal(6,2);当我点击go时,每次都会返回十进制(6)。
如果所有其他操作都失败,请直接编辑它生成的代码。这对我很有用。使用此查询更改小数点:
ALTER TABLE table_name CHANGE column_name column_name DECIMAL(10,2) UNSIGNED NOT NULL;
如果您使用MySQL Workbench而不是最简单的phpMyAdmin接口,您将得到您想要的 它是免费的,功能强大,你可以从
为什么不在保存到数据库之前将其设置为int并进行转换?或者将字段的小数点设置为0。这可能会起作用tabledreza的当前模式如何转换?换句话说,两位数之间需要逗号,而不是小数。您应该指定10,2而不是10.2——后者被解释为单个参数(转换为整数10),因此只定义左侧的位数。