sqlalchemy.exc.StatementError: SQLite Date type only accepts Python date objects as input.

在Flask项目中使用SQLAlchemy操作SQLite数据库时,遇到StatementError,提示SQLite Date类型仅接受Python date对象。错误发生在尝试插入非Python日期格式的数据。解决方案是利用datetime模块将接收到的日期数据转换为Python日期格式,以便于插入。
摘要由CSDN通过智能技术生成

在进行flask项目中,本人flask使用SQLalchemy插件来操作sqlite数据库。在使用sqlalchemy过程中需要注意的是sqlalchemy操作数据库进行数据插入的时候,并不区分字段的格式,也就是说定义的整形字段可以插入字符串类型。使用的时候要小心,自己注意。

但在今天的对数据库插入日期格式的数据:

name = request.form.get("name")
gender = request.form.get("gender")
birthday = request.form.get("birthday")
course_id = request.form.get("course_id")
user_id = request.cookies.get("user_id")
teacher = Teachers()
teacher.name = name
teacher.gender = gender
teacher.birthday = birthday
teacher.course_id = course_id
teacher.save()

 会报出如下错误:

sqlalchemy.exc.StatementError: (builtins.TypeError) SQLite Date type only accepts Python date objects as input.

[SQL: INSERT INTO teachers (name, gender, birthday, course_id) VALUES (?, ?, ?, ?)]

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值