python:更新现有的sqlite db

时间:2013-07-22 02:07:31

标签: python sql python-2.7 sqlite

创建一个创建sqlite数据库的python脚本:

import sqlite3

con = sqlite3.connect('some.db',detect_types=sqlite3.PARSE_DECLTYPES)
with con:
    cur = con.cursor()
    cur.execute("CREATE TABLE Title(ID INT, ...)")

然后使用列表中的内容填充数据库:

    <ID> = <whatever>
    <var1> = <you get the point>

    altogether = (ID, var1...)
    cur.execute("INSERT INTO Title VALUES(?,?,...)", altogether)
    con.commit()

我现在想要编写此脚本的修改版本,该版本采用现有的some.db并对其进行更新,但只有在数据库中尚不存在该ID时才会这样做。

我如何:

  1. 打开some.db进行读/写以仅更新值

  2. 查询数据库以确保我当前正在迭代的ID的{​​{1}}在数据库中不存在?我当前填充变量的方式是对外部服务进行API调用,如果条目已经在我的数据库中,我希望能够跳过这些服务。

1 个答案:

答案 0 :(得分:0)

  1. 你已经这样做了。

  2. 别。制作专栏UNIQUE并处理INSERT上的例外。