具体来说,如何在不使用所有值的情况下插入sqlite3数据库和python .
如果我的表设置如下:
People: f_name | l_name | age | favorite_color
当我创建一个新行时,我怎么能只输入一些像这样的值:
c.execute("INSERT INTO People VALUES (?, ?)", (f_name, l_name))
现在,只填充四列中的两列会产生错误 .
1)如果省略某些参数,INSERT语句不会自动知道哪个值在哪里 . 通常,明确提及列的名称是一种好习惯 . 例如:INSERT INTO People(f_name,l_name)
2)如果这些列不可为空,那么你根本不能省略它们!
您必须明确列出列:
c.execute("INSERT INTO People (f_name, l_name) VALUES (?, ?)", (f_name, l_name))
2 回答
1)如果省略某些参数,INSERT语句不会自动知道哪个值在哪里 . 通常,明确提及列的名称是一种好习惯 . 例如:INSERT INTO People(f_name,l_name)
2)如果这些列不可为空,那么你根本不能省略它们!
您必须明确列出列:
c.execute("INSERT INTO People (f_name, l_name) VALUES (?, ?)", (f_name, l_name))