class md5sumtbl: def __init__(self): self.db = sqlite3.connect("md5sumtbl.db", isolation_level = 'IMMEDIATE') # create the table if there is no one. def check_table(self): cur = self.db.cursor() cur.execute("select name from SQLite_Master where name='md5sum'") if cur.fetchone() == None: self.db.execute("create table md5sum(data varchar(32) not null)") def __del__(self): self.db.close() def item_presence(self, md5sum): cur = self.db.cursor() cur.execute("select data from md5sum where data='%s'" % (md5sum)) if cur.fetchone() == None: return False else: return True def store_item(self, md5sum): if not self.item_presence(md5sum): self.db.execute("begin transaction") self.db.execute("insert into md5sum(data) values('%s')" % md5sum) self.db.execute("commit") def nuke(self): self.db.execute("delete from md5sum")