Я хотел бы иметь возможность анализировать произвольный оператор SQL SELECT и извлекать различные компоненты (столбцы, отношения, условия JOIN, условия WHERE, столбцы ORDER BY), в идеале используя Delphi. Быстрый поиск в Google показывает несколько различных бесплатных продуктов, но неясно, полны ли они и/или находятся в активной разработке.Библиотека для анализа операторов SQL
Мне нужно немедленно извлечь список отношений, используемых в серии определений VIEW, чтобы убедиться, что требуемые представления или таблицы существуют до того, как я попытаюсь СОЗДАТЬ представление. Так, например, для справки:
SELECT PersonID, LastName, OrderID
FROM People P INNER JOIN Orders O ON P.PersonID = O.PersonID
Мне нужно вернуть значения «Люди» и «Заказы». (Очевидно, что это простой пример. Я хочу иметь возможность обрабатывать более сложные случаи, когда, например, слово «FROM» может отображаться в списке столбцов как часть выражения).
Я пытаюсь предоставить эту услугу в базе данных, что позволяет использовать STDCALL функций, экспортируемых из DLL, поэтому в идеале любой кандидат библиотека будет вызывать из Delphi или C.
Можете ли вы, возможно, сказать мне, какой SQL движок вы используете? Если я не пропустил это. – Reallyethical
Будьте счастливы, но это вам не поможет. Я использую R: Base. –