如何为mysql格式化日期时间



我想把日期和时间从python发送到mysql。MySQL中的变量类型为datetime。我使用了年月日小时:分钟:秒,但当我编译时,它会在空格后(时间部分开始的地方)出现错误。显示,我如何为这个变量创造好的值?

错误:

错误1064:您的SQL语法有错误;查看与MySQL服务器版本对应的手册,了解在第2行"12:00:00,",7000,NULL,NULL,"",5,"、"、""、NULL,NULL、NULL、NULL,"

格式应为:

 YYYY-MM-DD HH:MM:SS not YYYY-MM-DD HH-MM-SS

关于您的错误消息,它似乎从日期时间字段的中间开始。试着在它们周围加上单引号。

sqlfiddle演示

Python的所有MySQL驱动程序都应该能够本地处理Python日期时间对象。如果您正确使用MySQL驱动程序,就不应该将datetime对象转换为字符串。

请参阅另一个问题的答案:https://stackoverflow.com/a/775399/471671(第二个答案)。答案是安全问题,这是这样做的最大原因,但另一个原因是类型转换会自动进行,您不必担心字符串格式化日期时间对象(或其他任何事情)。

最新更新