解决python写入mysql中datetime类型遇到的问题
Python  /  管理员 发布于 7年前   438
刚开始使用python,还不太熟练,遇到一个datetime数据类型的问题:
在mysql数据库中,有一个datetime类型的字段用于存储记录的日期时间值。python程序中有对应的一个datetime变量dt。
现在需要往mysql数据库中添加记录,每次添加时,将datetime型变量dt写入mysql数据库tablename表中exTime字段里。
问题,如何写入?调试时,总是无法写入。
运行环境:windows10 python 3.6 mysql5.6.38
运行结果提示:
Process finished with exit code 0
#------看我写的程序-------------import datetimeimport pymysql.cursorsconn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='', db='test', charset='utf8', cursorclass=pymysql.cursors.DictCursor)#中间略去dt赋值部分...print(dt.strftime('%Y-%m-%d %H:%M:%S'))#运行结果是 2001-1-2 11:00:00sql_insert=sql_insert="INSERT into tablename(exTime) values(%s)" %(dt.strftime("%Y-%m-%d %H:%M:%S"))#如果此处写成sql_insert=sql_insert="INSERT into tablename(exTime) values('2001-1-2 11:00:00')" 则可以运行try: with conn.cursor() as csor1: csor1.execute(sql_insert) conn.commit() csor1.close()except Exception as e: #错误回滚 conn.rollback()finally: conn.close()###-----------------------------------后来在网上查了一下,mysql中datetime类型字段,赋值时最好用str_to_date函数转化成mysql的datetime类型
因此,把上面的程序改了一下:
sql_insert=sql_insert="INSERT into tablename(exTime) values(str_to_date(\'%s\','%%Y-%%m-%%d %%H:%%i:%%s'))" %(dt.strftime("%Y-%m-%d %H:%M:%S"))重新运行,通过!
以上这篇解决python写入mysql中datetime类型遇到的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号
