Files
Random-image-api/backend/app/db/sqlite_utils.py
T
2026-02-22 18:58:55 +08:00

22 lines
572 B
Python

from __future__ import annotations
import sqlalchemy as sa
from sqlalchemy.ext.asyncio import AsyncSession
def sqlite_fts_phrase_query(q: str) -> str:
q = (q or "").strip()
q = q.replace('"', '""')
return f'"{q}"'
async def sqlite_table_exists(session: AsyncSession, *, name: str) -> bool:
name = (name or "").strip()
if not name:
return False
result = await session.execute(
sa.text("SELECT 1 FROM sqlite_master WHERE type='table' AND name=:name LIMIT 1;"),
{"name": name},
)
return result.first() is not None