diff --git a/app/core/database.py b/app/core/database.py index 30b4432..e5f2938 100644 --- a/app/core/database.py +++ b/app/core/database.py @@ -115,7 +115,10 @@ async def _run_migrations(conn) -> None: sql = path.read_text(encoding="utf-8") _validate_sql_content(name, sql) logger.info(f"[migration] {name} 실행 중...") - await conn.execute(text(sql)) + # raw driver SQL 사용 — text() 의 :name bind parameter 해석으로 + # SQL 주석/literal 에 콜론이 들어가면 InvalidRequestError 발생. + # exec_driver_sql 은 SQL 을 driver(asyncpg) 에 그대로 전달. + await conn.exec_driver_sql(sql) await conn.execute( text("INSERT INTO schema_migrations (version, name) VALUES (:v, :n)"), {"v": version, "n": name},