如何将输入列表中的值插入数据库的表中?

时间:2018-11-24 03:26:21

标签: python database sqlite

编写一个名为“ add_list”的函数,该函数将列表作为参数,其中每个值本身就是一个包含3个字符串的列表。该函数不返回值。有一个数据库保存在名为“ rarely.db”的文件中,该数据库包含一个名为“ big”的表,该表的列为“ ought”,“ spray”和“ courtroom”。使用每个列表中的3个字符串作为三列的值,将输入列表中的每个值插入此表中。

import sqlite3
    def add_list(lista):
        conn=sqlite3.connect('rarely.db')
        c=conn.cursor()
        ought1 = c.execute('SELECT ought FROM big').fetchall() 
        spray1 = c.execute('SELECT spray FROM big').fetchall() 
        courtroom1 = c.execute('SELECT courtroom FROM big').fetchall()
        insert = c.execute('INSERT INTO big VALUES(?)', (lista))
        conn.commit()
        conn.close()

这是我的尝试。我在做什么错了?

1 个答案:

答案 0 :(得分:1)

您可以使用executemany

import sqlite3
def add_list(lista):
   conn=sqlite3.connect('rarely.db')
   c=conn.cursor()
   insert = c.executemany('INSERT INTO big VALUES (?, ?, ?)', lista)
   conn.commit()
   conn.close()