python + sqlite,将变量中的数据插入表中

时间:2010-12-05 19:06:07

标签: python sql sqlite

我可以将没有问题的硬编码值插入到SQLite表中,但我正在尝试这样做:

name = input("Name: ")
phone = input("Phone number: ")
email = input("Email: ")

cur.execute("create table contacts (name, phone, email)")
cur.execute("insert into contacts (name, phone, email) values"), (name, phone, email)

我知道这是错的,我找不到如何让它发挥作用。也许有人可以指出我正确的方向。

3 个答案:

答案 0 :(得分:41)

您可以使用?来表示SQL查询中的参数:

cur.execute("insert into contacts (name, phone, email) values (?, ?, ?)",
            (name, phone, email))

答案 1 :(得分:0)

cur.executemany(“插入联系人(姓名,电话,电子邮件)值(?,?,?)”,                 (姓名,电话,电子邮件)

答案 2 :(得分:0)

cur.execute("create table contacts (name, phone, email)")

cur.execute("insert into contacts (name, phone, email) values(?,?,?)",(name, phone, email)) 

OR

cur.execute("insert into contacts values(?,?,?)",(name, phone, email))

在将值插入所有可用字段时,不要在插入查询中提及列名