如何在SQLite3中格式化查询?

2024-05-03 13:28:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我无法格式化字符串以使用SQLite3进行查询。我总是得到错误sqlite3.OperationalError: near "something": syntax error

我已经尝试了很多格式化的方法,但是都没有成功。你知道吗

我的第一个问题是这样的

sql_query = "EXISTS(SELECT isbn13 FROM ebooks WHERE isbn13 = '{}')".format(isbn13)

使用以下代码

cur = self.conn.cursor()
cur.execute(sql_query)
return cur.fetchone()

然后我尝试了很多格式化查询的方法,比如:

sql_query = "SELECT EXISTS(SELECT {is} FROM {e} WHERE {is}={i});".format(is="isbn13", e="ebooks", i=isbn13)

sql_query = "SELECT EXISTS(SELECT isbn13 FROM ebooks WHERE isbn13='{}')".format(isbn13)

sql_query = "SELECT EXISTS(SELECT isbn13 FROM ebooks WHERE isbn13 = '%s')" % isbn13

以及其他我已经删除的。你知道吗

最后return cur.fetchone()应该返回True或False。你知道吗

我曾经尝试在查询中更改我在那里硬编码的实际字符串的字符串格式,结果成功了,没有抛出语法错误。所以错误一定在这里。你知道吗


Tags: 方法字符串fromformatsqlreturnis错误