0

有一个创建 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查询 db以确保item我当前正在迭代的 db 中不存在?我目前填充变量的方式是通过对外部服务进行 API 调用,如果条目已经在我的数据库中,我希望能够跳过该服务。

4

1 回答 1

0
  1. 和你已经做过的一样。

  2. 不。创建列UNIQUE并处理INSERT.

于 2013-07-22T03:00:40.653 回答