建立数据库表时,百分数要用字符类型。
原因:因为百分号(%)不是可读的数字类型,除非用小数表示,否则只能用字符类型来保存。
工具:mysql 5.6
测试步骤:
1、数据库中test表结构如下,其中col1为字符类型,col2位数字类型
2、在col1中插入50%这个数据。语句如下:
insert into test(col1) values ('50%');
插入后结果:
3、在col2中也插入50%这个数据,语句如下:
update test set col2=50%;
系统会报错:
总结:说明带百分号的数据只能用字符类型来存储。
数据库里没有百分数这样的类型,表示数字的有float,decimal等类型,表示文本的有varchar,char,text等类型,如果你想存百分比的话,最好是建个float字段,把百分比计算成数值存进去,如果你非要存到库里面显示0%-100%这样的数值的话,那就用varchar类型的就可以了,取出的时候,你在换算就可以了。
1,数据库里没有百分数这样的类型,表示数字的有float,decimal等类型,表示文本的有varchar,char,text等类型。
2, 如果你想存百分比的话,最好是建个float字段,把百分比计算成数值存进去,如果你非要存到库里面显示0%-100%这样的数值的话,那就用varchar类型的就可以了,取出的时候,你在换算就可以了。