数据库删除单个元素 SDK 错误(多个 WHERE)

Databases Removing a Single Element SDK Error (Multiple WHEREs)

我正在尝试使用 SDK 从我的数据库中删除单个元素。我不断收到以下错误,但我不知道如何解决:

Exception in Tkinter callback
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/tkinter/__init__.py", line 1892, in __call__
return self.func(*args)
File "/Users/jasonsilla/Desktop/Code/Python/Book_GUI_Program/main.py", line 25, in remove_from_list
if booksSDK.delete_book(book):
File "/Users/jasonsilla/Desktop/Code/Python/Book_GUI_Program/booksSDK.py", line 52, in delete_book
c.execute("DELETE FROM books WHERE title=?, pages=?", (book.title, book.pages))
sqlite3.OperationalError: near ",": syntax error

SDK移除元素代码如下:

def delete_book(book):
    c = cursor()
    with c.connection:
        c.execute("DELETE FROM books WHERE title=?, pages=?", (book.title, book.pages))
    row_count = c.rowcount
    c.connection.close()
    return row_count

我的问题是为什么会出现此错误。我不明白这一点,所以如果有人可以帮助我,我相信代码中的错误在:

c.execute("DELETE FROM books WHERE title=?, (<-) pages=?", (book.title, (<- or here) book.pages))

谢谢!!!

问题出在第一个箭头:

title=?, (<- here) pages=?

您要使用 AND 而不是逗号。这消除了错误。希望我有所帮助!!!