'Great speed improvement can be gained by using explicit transactions around multiple inserts.
Reference: http://stackoverflow.com/questions/4719836/python-and-sqlite3-adding-thousands-of-rows'

def beginTransaction(self):

    self.execute('BEGIN    TRANSACTION')
