Rust `sqlx` 매크로가 SQL 오류를 빌드 시점으로 끌어올리는 원리 — `query!` vs `query_as!`와 오프라인 모드 | DEV BAK - 기술블로그