|
8 | 8 |
|
9 | 9 | db_file = os.path.join(current_dir, "catalogs.db") |
10 | 10 | conn = sqlite3.connect(db_file, check_same_thread=False) |
11 | | -c = conn.cursor() |
12 | 11 |
|
13 | 12 |
|
14 | 13 | def select(catalog_name, key): |
15 | | - c.execute(f"SELECT value FROM {catalog_name} WHERE key = ?", (pickle.dumps(key),)) |
16 | | - if ds := c.fetchone(): |
17 | | - return pickle.loads(ds[0]) |
| 14 | + with conn: |
| 15 | + c = conn.cursor() |
| 16 | + c.execute(f"SELECT value FROM {catalog_name} WHERE key = ?", (pickle.dumps(key),)) |
| 17 | + if ds := c.fetchone(): |
| 18 | + return pickle.loads(ds[0]) |
18 | 19 |
|
19 | 20 |
|
20 | 21 | def select_all(catalog_name): |
21 | | - c.execute(f"SELECT key, value FROM {catalog_name}") |
22 | | - return {pickle.loads(k): pickle.loads(v) for k, v in c.fetchall()} |
| 22 | + with conn: |
| 23 | + c = conn.cursor() |
| 24 | + c.execute(f"SELECT key, value FROM {catalog_name}") |
| 25 | + return {pickle.loads(k): pickle.loads(v) for k, v in c.fetchall()} |
23 | 26 |
|
24 | 27 |
|
25 | 28 | def catalog_code(catalog_name, key, index=None): |
@@ -60,8 +63,10 @@ def split_at_upper_itr(word: str): |
60 | 63 |
|
61 | 64 |
|
62 | 65 | def trans(k): |
63 | | - c.execute(f"SELECT value FROM Translations WHERE key = ?", (k,)) |
64 | | - if res := c.fetchone(): |
65 | | - return res[0] |
| 66 | + with conn: |
| 67 | + c = conn.cursor() |
| 68 | + c.execute(f"SELECT value FROM Translations WHERE key = ?", (k,)) |
| 69 | + if res := c.fetchone(): |
| 70 | + return res[0] |
66 | 71 |
|
67 | | - return split_at_upper(k) |
| 72 | + return split_at_upper(k) |
0 commit comments