Python-使用sqlite3将文件名插入数据库
我已在数据库中创建了此表:Python-使用sqlite3将文件名插入数据库,python,sqlite,Python,Sqlite,我已在数据库中创建了此表: cur.execute("""CREATE TABLE VIDEO(ID VARCHAR(128) NOT NULL PRIMARY KEY)""") 我的脚本要做的是读取文件夹中的所有文件,并将文件名放入视频表(文件名是ID和主键): 但我有一个错误: cur.execute("""INSERT INTO VIDEO(ID) VALUES(?)""", (video)) sqlite3.ProgrammingError: Incorrect number
cur.execute("""CREATE TABLE VIDEO(ID VARCHAR(128) NOT NULL PRIMARY KEY)""")
我的脚本要做的是读取文件夹中的所有文件,并将文件名放入视频表(文件名是ID和主键):
但我有一个错误:
cur.execute("""INSERT INTO VIDEO(ID) VALUES(?)""", (video))
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 26 supplied.
现在26是我试图添加的文件名中的字符数,所有文件都是通过以下方式从文件夹中读取的:
for video in os.listdir(VIDEO_FOLDER):
AddVideo(video)
如果我没有弄错的话,cur.execute()函数将参数元组作为其第二个参数。它将您的
值
参数视为一个元组,在本例中,元组长度为26个字符。要使其成为元组,只需添加一个逗号
cur.execute("""INSERT INTO VIDEO(ID) VALUES(?)""", (video,))
请检查此处提供的解决方案是否对您有帮助:[1][1]:这就是问题所在,谢谢!
cur.execute("""INSERT INTO VIDEO(ID) VALUES(?)""", (video,))