微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

正确生成浮点型的方法,解决sqlachemy Float浮点型的坑,生成float类型时,长度和精度均为0,导致查询不到结果!

问题描述

在使用flask_sqlachemy时,给price字段选择了Float类型,数据库用的MysqL生成数据库表后,发现

<div class="cnblogs_code">

 sqlalchemy = Column(Float,default=0.00)

虽然能存储float类型,结果如下

查询时有问题!!!

根本查不到结果

错误示例,还有如下几种

错误示范

sqlalchemy sqlalchemy.dialects.MysqL <span style="color: #0000ff;">class<span style="color: #000000;"> TestTable(db.Model):
<span style="color: #800080;">tablename
= <span style="color: #800000;">'
<span style="color: #800000;">my_test_table
<span style="color: #800000;">'<span style="color: #000000;">
float_1 = Column(FLOAT(length=10,precision=2<span style="color: #000000;">))
float_2 = Column(Float(10,2<span style="color: #000000;">))
float_3 = Column(Float(as_decimal=<span style="color: #000000;">True))
float_4 = Column(Float(precision=10,scale=2),default=0.00)

上面方法无论哪种生成的结果,依然长度为0.无法查询

解决办法

sqlalchemy.dialects.MysqL float_5 = Column(FLOAT(precision=10,scale=2))

dio controls="controls" style="display: none;">

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐