Dan*_*any 0 python sqlite python-2.7
问题:
我在使用 python 将数据插入 SQlite 时遇到问题。目前我是 python 新手,所以这一定是初学者的错误。
错误:
操作错误:无法识别的令牌:“{”
我尝试过的:
我已经阅读了很多教程并尝试了很多选项,如下代码示例所示。但由于某种原因,我无法让它正常工作。
一些例子 :
cursor.execute("INSERT INTO wanted_movie (tmdb_id, name, year) VALUES ({tmdb_id}, {name}, {year})".format(
tmdb_id=str(data['id']), name=str(data['title']), year=str(data['release_date']).split('-')[0]))
cursor.execute("INSERT INTO wanted_movie (tmdb_id, name, year) VALUES ({tmdb_id}, {name}, {year})", {
"tmdb_id": str(data['id']), "name": str(data['title']), "year": str(data['release_date']).split('-')[0]})
conn.commit()
Run Code Online (Sandbox Code Playgroud)
问题 :
有人可以帮助我以 pythonic 方式使用 SQlite3 正确插入一行吗?
不仅仅是 pythonic 方式,还有 sqlitic 方式
\n\n来自文档
\n\n\n\n\n相反,请使用 DB-API\xe2\x80\x99s 参数替换。放?作为占位符,无论您想在哪里使用值,然后提供一个值元组作为游标的第二个参数\xe2\x80\x99s
\nexecute()方法。
你的例子之一可以通过使用来解决
\n\nvalues = (data[\'id\'],data[\'title\'],data[\'release_date\'])\ncursor.execute("INSERT INTO wanted_movie (tmdb_id, name, year) VALUES (?, ?, ?)",values)\nRun Code Online (Sandbox Code Playgroud)\n