关于sqlalchemy.exc.DataError: (pymysql.err.DataError) (1264, “Out of range value for column问题的解决

在人生的道路上,不管是潇洒走一回,或者是千山独行,皆须是自己想走的路,虽然,有的人并不是很快就能找到自己的方向和道路,不过,只要坚持到底,我相信,就一定可以找到自己的路,只要找到路,就不必怕路途遥远了。

导读:本篇文章讲解 关于sqlalchemy.exc.DataError: (pymysql.err.DataError) (1264, “Out of range value for column问题的解决,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

报错结果为:sqlalchemy.exc.DataError: (pymysql.err.DataError) (1264, “Out of range value for column ‘sal’ at row 1”)的原因是,所传参数产出规定的范围

如下代码

创建模型类

class Person(Base):
    __tablename__='t_person'
    id=Column(name='id',type_=Integer,primary_key=True,autoincrement=True)
    name=Column(name='name',type_=String(20),nullable=False)    #不能为空
    age=Column(name='age',type_=String(20))
    sal=Column(name='sal',type_=DECIMAL(6,2))
    phone=Column(name='phone',type_=String(11),unique=True)
    city=Column(name='city',type_=String(20))
    hire_date=Column(name='hire_date',type_=DateTime,default=datetime.now)
    desc=Column(name='desc',type_=Text(100),nullable=True)

    def __str__(self):
        return f'员工编号:{self.id}--员工姓名:{self.name}--员工手机号:{self.phone}'

增加数据

def save():
    p2=Person(name='python',age=18,sal='20000.88',phone='13888888888',city='北京',hire_date='2021-12-12',desc='大数据')
    session.add(p2)
    session.commit()

第6行代码:sal=Column(name='sal',type_=DECIMAL(10,2))中DECIMAL(6,2):第一个参数是用来标记这个字段总能能存储多少个数字,第二个参数表示小数点后有多少位;明显20000.88不符合条件。

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/123412.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!