Есть ли PostgreSQL SQL синтаксический анализатор строки запроса для PHP? - PullRequest
1 голос
/ 15 марта 2020

Мне нужно превратить PostgreSQL строки запроса в моем приложении, такие как:

$db_query_string = '
    SELECT *
    FROM "the schema"."a table" -- This is an SQL comment. At least in PostgreSQL.
    WHERE blabla = 123
        AND "another column" = $1
    ORDER BY
        whatever DESC
';

, в "структуру символов токена", так же, как с token_get_all () для кода PHP, чтобы Я получаю что-то вроде массива «символов» вдоль строк (это это просто пример , а не точное требование):

[
'SELECT_TOKEN',
'ASTERISK_TOKEN',
'FROM_TOKEN',
'SCHEMA_TOKEN' => 'the schema',
'TABLE_TOKEN' => 'a table',
'COMMENT_TOKEN' => 'This is an SQL comment. At least in PostgreSQL.',
'WHERE_TOKEN',
'BLABLABLA'...
]

Et c. Вы поняли.

Я ничего не нахожу при поиске в Интернете. Самое близкое, что я видел, это что-то для MySQL, но я даже не посещал этот результат поиска, так как я не пользуюсь тем, что работает только с MySQL. Он должен работать со вкусом PostgreSQL SQL.

...