Я пытаюсь использовать модуль pgsanity для быстрого синтаксиса SQL для базовых синтаксических ошибок перед отправкой запроса на очень медленный сервер. Большая часть документации показывает использование pgsanity в командной строке; Тем не менее, я хотел бы использовать его в скрипте Python. Просматривая документацию, я пытаюсь
import pgsanity.ecpg
pgsanity.ecpg.check_syntax(str)
для примера запроса str
. Однако это совсем не работает:
>>> import pgsanity.ecpg
>>> pgsanity.ecpg.check_syntax("select * from;")
(True, '')
>>> pgsanity.ecpg.check_syntax("I am not SQL, am I?")
(True, '')
>>> pgsanity.ecpg.check_syntax("select select select select. select! select :-(")
(True, '')
Каждый запрос возвращает (True,'')
, что указывает на то, что код возврата системного вызова ecpg
в командной строке был 0.
Я использую Python 2.7.15 на OS X, с pgsanity, установленным сегодня через pip.