Gần đây tôi đã viết một tiện ích để kiểm tra tĩnh cú pháp của SQL cho PostgreSQL. Nó sử dụng ecpg, bộ xử lý trước SQL C được nhúng cho postgres, để kiểm tra cú pháp SQL, vì vậy nó sử dụng cùng một trình phân tích cú pháp được tích hợp sẵn cho chính Postgres.
Bạn có thể kiểm tra trên github: http://github.com/markdrago/pgsanity . Bạn có thể đọc lướt qua README để hiểu rõ hơn về cách thức hoạt động của nó và để được hướng dẫn cách cài đặt nó. Dưới đây là một ví dụ ngắn gọn về cách có thể sử dụng pgsanity:
$ pgsanity good1.sql good2.sql bad.sql
bad.sql: line 1: ERROR: syntax error at or near "bogus_token"
$ find -name '*.sql' | xargs pgsanity
./sql/bad1.sql: line 59: ERROR: syntax error at or near ";"
./sql/bad2.sql: line 41: ERROR: syntax error at or near "insert"
./sql/bad3.sql: line 57: ERROR: syntax error at or near "update"