def update(self, items):
if self.read_only:
return
query = """UPDATE {tb} SET value=(?) WHERE key=("?");"""
if isinstance(items, Mapping):
items = items.items()
# ====== check if update is in cache ====== #
db_update = []
for key, value in items:
key = str(key)
if key in self.current_cache:
self.current_cache[key] = value
else:
db_update.append((marshal.dumps(value), key))
# ====== perform DB update ====== #
self.cursor.executemany(query.format(tb=self._current_table), db_update)
self.connection.commit()
return self
评论列表
文章目录