当前,我有以下代码,用于检查数据库中是否存在表名"Company"
,然后使用给定的字段创建表。
cur.executescript('''
DROP TABLE IF EXISTS Company;
CREATE TABLE Company (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
name VARCHAR2
)
''')
我想使此查询通用,而不是仅在查询中使用"Company"
,而是需要从列表中获取名称。在此示例中,是否可以在查询中传递变量而不是传递"Company"
。
谢谢!
答案 0 :(得分:0)
不可能将变量表名(或列名)传递给sqlite。 (并且由于executescript
仅接受一个参数,因此无法将变量传递给executescript
。)
您可以在执行之前构建查询,然后将该变量传递给executescript
。
当然,如果您从列表中获取表名,似乎您也必须也采用列名!