From 099a910365ea4c6d10432354fc44e4740066aad4 Mon Sep 17 00:00:00 2001 From: jay817 Date: Tue, 3 Dec 2024 06:25:54 +0000 Subject: [PATCH] Update sqlite3-python/README.md --- sqlite3-python/README.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sqlite3-python/README.md b/sqlite3-python/README.md index f99a32a..4363735 100644 --- a/sqlite3-python/README.md +++ b/sqlite3-python/README.md @@ -12,11 +12,12 @@ sql("SELECT * FROM sqlite_master WHERE type = 'table'") ```python def SQL(): import sqlite3, hashlib, os - sql = lambda q, *p, con=sqlite3.connect('.db'): list(con.execute(q, p)) - if not os.path.exists('.db-blob') and (os.mkdir('.db-blob') or True): - list(map(sql, ['PRAGMA journal_mode=WAL', - 'CREATE TABLE kv(k TEXT, v BLOB, t TIMESTAMP DEFAULT CURRENT_TIMESTAMP)', - 'CREATE INDEX idx_kv_v ON kv(v)', 'CREATE INDEX idx_kv_k_t ON kv(k, t DESC)'])) + con = sqlite3.connect('.db', isolation_level=None) + sql = lambda q, *p: list(con.execute(q, p)) + if not os.path.exists('.db-blob') and os.mkdir('.db-blob') is None: + con.executescript('''PRAGMA journal_mode=WAL; + CREATE TABLE kv(k, v, t DEFAULT CURRENT_TIMESTAMP); + CREATE INDEX idx_kv_v ON kv(v); CREATE INDEX idx_kv_k_t ON kv(k,t DESC)''') def setitem(_, filename, blob): if not sql('SELECT 1 FROM kv WHERE v=?', sha1 := hashlib.sha1(blob).hexdigest()): with open(f'.db-blob/{sha1}', 'xb') as f: f.write(blob) @@ -30,6 +31,7 @@ sql = SQL() print(sql['hello']) # None sql['hello'] = b'world' print(sql['hello']) # b'world' +print(sql['hello']) # b'world' ``` # Dict-like