Venus / src /db /connection.py
Amir
Venus Hotel Front Desk – initial HF deploy
9d9d2a1
raw
history blame contribute delete
718 Bytes
import os
import sqlite3
from typing import Tuple, Optional
def resolve_db_path() -> Tuple[str, bool]:
if os.path.isdir("/data"):
return "/data/venus_hotel.db", True
os.makedirs("./data", exist_ok=True)
return "./data/venus_hotel.db", False
def get_conn(db_path: Optional[str] = None) -> sqlite3.Connection:
if db_path is None:
db_path, _ = resolve_db_path()
conn = sqlite3.connect(db_path, check_same_thread=False, isolation_level=None)
conn.row_factory = sqlite3.Row
conn.execute("PRAGMA foreign_keys = ON;")
conn.execute("PRAGMA journal_mode = WAL;")
conn.execute("PRAGMA synchronous = NORMAL;")
conn.execute("PRAGMA busy_timeout = 5000;")
return conn