我不明白为什么我的陈述没有运行,看来应该如此。我检查了一下文档以确保格式正确,然后我将UPDATE
更改为删除,但没有结果。
这是我的表模式:
CREATE TABLE shop(
id integer PRIMARY KEY,
poster_id TEXT,
item_name TEXT,
price TEXT,
item_id TEXT,
sold TEXT
);
这是我的声明(通过调试,我知道它可以运行):
c.execute('''UPDATE shop SET sold = ? WHERE item_id = ?''',('True',message.split()[0]))
这不起作用 但是对于调试我已经尝试过:
c.execute('''SELECT * FROM shop WHERE item_id = ?''',(message.split()[0],))
其输出完全符合预期。
答案 0 :(得分:0)
UPDATE
和DELETE
语句要求您使用connection.commit()
才能将更改提交到数据库,这就是SELECT
语句起作用而其他两个没有起作用的原因