我想更新我的数据库。我想把None改成time,当我运行它的时候
sqlite3.OperationalError: near ":59": syntax error
我要更新的代码是:
now = datetime.now()
trigger_time = str(now.strftime("%H:%M"))
db.execute(f"""Update Signals set Triger_Time = {trigger_time} where ID = {int(signal_id)}""")
SOLVED BY (https://stackoverflow.com/a/69661333/16613629)
回答:您忘记了Triger_Time:
周围的引号now = datetime.now()
trigger_time = str(now.strftime("%H:%M"))
db.execute(f"""Update Signals set Triger_Time = '{trigger_time}' where ID = {int(signal_id)}""")
你忘记了Triger_Time:
now = datetime.now()
trigger_time = str(now.strftime("%H:%M"))
db.execute(f"""Update Signals set Triger_Time = '{trigger_time}' where ID = {int(signal_id)}""")
虽然添加引号可以解决您的直接问题,但通常更倾向于使用参数化查询而不是字符串格式化来构建SQL代码。
now = datetime.now()
trigger_time = str(now.strftime("%H:%M"))
db.execute("Update Signals set Triger_Time = ? where ID = ?", [trigger_time, int(signal_id)])