【发布时间】:2017-09-29 13:51:45
【问题描述】:
我有一个 SQL 查询,在复制粘贴到我的 Python 代码时可以正常工作。有一行参数我想在我的 Python 脚本中创建一个变量,
AND TimeStamp like '%2017-04-17%'
所以我在 Python 脚本中设置了一个变量:
mydate = datetime.date(2017, 4, 17) #Printing mydate gives 2017-04-17
并将查询中的行更改为:
AND TimeStamp like %s
首先,当我使用粘贴在查询中的日期副本运行脚本时:cursor.execute(query) 没有错误,我可以使用cursor.fetchall() 打印结果
当我将日期设置为变量mydate 并使用%s 并尝试运行脚本时,其中任何一个都会给我一个错误:
cursor.execute(query,mydate) #"You have an error in your SQL Syntax..."
cursor.execute(query, ('%' + 'mydate' + '%',)) #"Not enough parameters for the SQL statement"
cursor.execute(query, ('%' + 'mydate' + '%')) #"You have an error in your SQL Syntax..."
cursor.execute(query, ('%' + mydate + '%')) #"must be str, not datetime.date
"
我只想要'%2017-04-17%' %s 所在的位置。
【问题讨论】:
标签: python mysql mysql-connector-python