All pastes #807117 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-12-06 07:18 UTC
rendered paste body
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")