报错结果为: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