Вход
Регистрация

Переменные: применение при импорте из базы данных

Как использовать переменные в качестве параметров SQL-запроса? Вопрос разобран на примере импорта данных из базы.

Во время выполнения импорта данных из баз данных с использованием SQL запросов могут использоваться переменные. Они могут содержать как определенное значение для условий раздела WHERE, так и часть текста запроса (или вообще весь запрос).

Формат задания переменной в блоке WHERE SQL-запроса, где необходимо использовать ее значение, следующий: ставится символ двоеточия (:) и сразу за ним имя переменной.

Например, у нас есть SQL-запрос для выборки записей из БД, ID которой равен 100

SQL запрос к БД

Результатом выполнения SQL-запроса в нашем случае будет таблица.

ID CHANGELOGID DiscountCode
100 1 100365

Для нашего примера, зададим переменную VarID=152(Меню программы, кнопка «Сервис»→«Переменные…») и модифицируем SQL-текст условия выборки на использование переменной.

SQL запрос к БД с использованием переменной

В результате использования переменной в запросе получим данные, как на таблице ниже.

ID CHANGELOGID DiscountCode
100 1 100365

Другой вариант, переменная может хранить текст самого SQL-запроса или его часть и использоваться в качестве макроподстановки текста в запрос, используя синтаксис
“%<VarName>%”

В нашем примере, зададим для переменной VarID значение “WHERE D.ID = 152”.

SQL запрос с переменной, содержащей часть текста запроса

Результатом выполнения запроса будет таблица аналогичная предыдущей, так как мы использовали те же данные и значения.

ID CHANGELOGID DiscountCode
100 1 100365