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

    问题描述

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

    from sqlalchemy import Float,Column
    price = Column(Float,default=0.00)

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

    但是查询时有问题!!!

    根本查不到结果

    错误示例,还有如下几种

    错误示范

    from sqlalchemy import Column,Float
    from sqlalchemy.dialects.mysql import FLOAT
    
    
    class TestTable(db.Model):
        __tablename__ = 'my_test_table'
        float_1 = Column(FLOAT(length=10, precision=2))
        float_2 = Column(Float(10,2))
        float_3 = Column(Float(as_decimal=True))
        float_4 = Column(Float(precision=10, scale=2),default=0.00)

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

     

    解决办法

    from sqlalchemy.dialects.mysql import FLOAT
    
    float_5 = Column(FLOAT(precision=10, scale=2))

  • 相关阅读:
    计算长度的方法
    自动装箱和拆箱
    基本数据包装类
    Date类
    文档参数解析
    权限修饰符
    IO流
    ArrayList集合类
    对象数组
    二维数组
  • 原文地址:https://www.cnblogs.com/huchong/p/9810190.html
Copyright © 2011-2022 走看看