试图在Python 3中创建一个SQLite表,但它说我提供了太多的值

时间:2015-05-05 03:52:34

标签: python sqlite python-3.x

我想创建一个包含名称和ID号列表的简单数据库。我希望有2列和4行 - 每个人一个。我一直得到的错误是:

  

OperationalError:表联系人有2列,但有4个值   供给

这是我的代码:

import sqlite3

conn = sqlite3.connect("test2.db")
cursor = conn.cursor()

cursor.execute('''CREATE TABLE IF NOT EXISTS contacts (name text, id_num text)''')

list = [('Taylor', '001'), ('Tory', '002'), ('Joe', '003'), ('Steve', '004')]

cursor.executemany("INSERT INTO contacts VALUES (?,?,?,?)", list)
conn.commit()

1 个答案:

答案 0 :(得分:2)

列表中每行只有两个值,因此您需要告诉INSERT INTO语句只需要两个值而不是四个值:

Private Function GetCurrentCulture() As System.Globalization.CultureInfo
    Return System.Threading.Thread.CurrentThread.CurrentCulture
End Function