最近在开发VIP功能(没有用于本站),发现xiuno4.0.4的user表rmbs字段默认是 int(11)
人民币字段如果使用整数型字段的话,那么是不能存储小数的,如果用户付款0.01元人民币,则无法对这个数值进行存储,存储的值还是0,所以有必要对这个字段进行转换。
这里推荐修改为 decimal(9,2) 类型,decimal(9,2)中的“2”表示小数部分的位数,如果插入的值未指定小数部分或者小数部分不足两位则会自动补到2位小数,若插入的值小数部分超过了2为则会发生截断,截取前2位小数,而左边指定了最大精度是9,作为货币字段完全满足现实需求。
在mysql中,可以使用“ALTER TABLE”语句配合“MODIFY”关键字来更改表中某字段的数据类型;语法格式“ALTER TABLE <表名> MODIFY <字段名> <新数据类型>”。
alter table bbs_user modify rmbs decimal(9,2) default 0.00;
修改后的效果:
修改后的rmbs字段内容会增加两位小数,实测也可以存储0.01这样的数值了:
以上方法只针对你使用的涉及人民币字段的插件,如果你的插件是以 分 为单位,则无需修改,如果是像我这样以 元 为单位,则需要修改。
用的xiuno4.0.4,个人资料那里RMB单位是分,所以int类型没问题吧
howareyou 用的xiuno4.0.4,个人资料那里RMB单位是分,所以int类型没问题吧
是没问题,我只是不习惯用分做单位罢了
版块
人生倒计时
~扫~码~领~红~包~