在Python中插入SQLite主键

2024-05-16 03:42:04 发布

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

我正在尝试从python脚本中插入SQLite。在

我收到一个错误:

table history has 4 columns but 3 values were supplied

之所以有3而不是4,是因为第一个是我的ID,我假设当我声明它为主键时,它会自动增加值。我该如何插入身份证

.py:

^{pr2}$

.db

CREATE TABLE history (id integer primary key, employeeID integer, time datetime, inout varchar);

Tags: columns脚本id声明sqlite错误tableinteger
1条回答
网友
1楼 · 发布于 2024-05-16 03:42:04

您要么必须为所有列提供值,要么显式地命名要插入的列。SQLite不会去猜测您为哪些列提供了值,您需要对它们进行明确的说明。在

您可以使用NULL让SQLite为您插入一个自动生成的id:

c.execute("INSERT INTO history VALUES (NULL,?,?,?)", (q[0],t,in))

也可以显式地命名要插入的3列:

^{pr2}$

相关问题 更多 >