У меня есть приложение, которое позволяет пользователю вводить строку SQL с заполнителем для определенных значений, которые производит мое приложение. Приложение заменит заполнители значениями и выполнит строку SQL через различные серверные части базы данных.
Для серверной части ODBC я вызываю SQLExecDirect() для строки SQL, которая прекрасно работает с обычными запросами, но не работает с хранимыми процедурами с параметрами.
Есть ли простой способ расширить этот механизм для поддержки хранимых процедур? Определенным образом, как должен быть написан SQL?
Единственное, о чем я могу думать прямо сейчас, это начать синтаксический анализ строки SQL и вызвать SQLBindParameter() n раз, если она содержит «вызов». Но синтаксический анализ SQL сложен.
Любые идеи ?
Пример рабочего SQL: SELECT columnA from foo, где columnB = '%placeholder'
Неработающий SQL: CALL StoredFoo('%placeholder')