diff options
author | Helmut Grohne <helmut@subdivi.de> | 2013-03-07 08:43:15 +0100 |
---|---|---|
committer | Helmut Grohne <helmut@subdivi.de> | 2013-03-07 08:43:15 +0100 |
commit | ac4c52c7a4501e90ed53f3ca5780bec4551a8c9f (patch) | |
tree | b6d065fd8386b26ea1b642dfc79b086386a543b3 /autoimport.py | |
parent | d6638c18872db382a8d1045b6de1f9438c8a25fa (diff) | |
download | debian-dedup-ac4c52c7a4501e90ed53f3ca5780bec4551a8c9f.tar.gz |
enable enforcing foreign keys
Diffstat (limited to 'autoimport.py')
-rwxr-xr-x | autoimport.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/autoimport.py b/autoimport.py index a7ea5ff..bc2c6aa 100755 --- a/autoimport.py +++ b/autoimport.py @@ -14,6 +14,7 @@ def main(): urlbase = sys.argv[1] db = sqlite3.connect("test.sqlite3") cur = db.cursor() + cur.execute("PRAGMA foreign_keys = ON;") cur.execute("SELECT package, version FROM package;") knownpkgs = dict((row[0], row[1]) for row in cur.fetchall()) @@ -37,7 +38,10 @@ def main(): delpkgs = set(knownpkgs) - distpkgs print("clearing packages %s" % " ".join(delpkgs)) - cur.execute("PRAGMA foreign_keys=1;") + cur.executemany("DELETE FROM sharing WHERE package1 = ?", + ((pkg,) for pkg in delpkgs)) + cur.executemany("DELETE FROM sharing WHERE package2 = ?", + ((pkg,) for pkg in delpkgs)) cur.executemany("DELETE FROM content WHERE package = ?;", ((pkg,) for pkg in delpkgs)) cur.executemany("DELETE FROM dependency WHERE package = ?;", |