我是一个完全的初学者,我有一个测试 mysql 数据库设置。我目前正在尝试检查数据库中列出的备份开始时间是否在当天中午 12 点之前。使用以下方法将时间输入表中:
UPDATE Clients SET backup_started=NOW() WHERE id=1;
我目前正在尝试的是:
now = datetime.datetime.now()
today12am = now.replace(hour=0, minute=0, second =0,)
dbu.cursor.execute('SELECT id, company_name, backup_started,\
backup_finished FROM Clients WHERE backup_started>' + today12am)
data = dbu.cursor.fetchone()
print (data)
我知道它正在尝试将 datetime.datetime 与字符串进行比较,而这正是它遇到问题的地方。我的问题是实现此目标的最佳方法是什么?
错误:
TypeError: cannot concatenate 'str' and 'datetime.datetime' objects
最佳答案
使您的查询参数化:
dbu.cursor.execute("""
SELECT
id, company_name, backup_started, backup_finished
FROM
Clients
WHERE
backup_started > %s""", (today12pm, ))
关于python - 将 python 日期时间与 mysql 日期时间进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29395420/