Переменные Подстановки

До сих пор все SQL-операторы выполнялись с предопределенными столбцами, условиями и их значениями. Предположим, что Вы хотите сделать запрос, который перечисляет сотрудников с различными заданиями, а не только теми, job_ID в которых является SA_REP.

Переменные Подстановки

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

При использовании переменной подстановки вместо точных значений в предложении WHERE, можно выполнить тот же самый запрос для различных значений.

Можно создавать отчеты, которые предлагают пользователям предоставить их собственные значения, чтобы ограничить диапазон возвращаемых данных, при использовании переменных подстановки. Можно встроить переменные подстановки в командный файл или в единственный SQL-оператор. Переменная может считаться контейнером, в котором временно сохранены значения. Когда оператор выполняется, хранимое значение заменяется.

Использование Переменных Подстановки

  • Используйте переменные подстановки для:

    • Временного хранения значений подстановки с одним амперсандом (&) и двумя амперсандами (&&)

  • Используйте переменные подстановки, чтобы дополнить следующее:

    • Условия WHERE

    • Предложения ORDER BY

    • Выражения столбцов

    • Имена таблиц

    • Целые операторы SELECT

Можно использовать переменные подстановки с единственным амперсандом (&), чтобы временно хранить значения.

Можно также предопределить переменные при использовании команды DEFINE. DEFINE создает и присваивает значение переменной.

Ограниченные Диапазоны Данных: Примеры

  • Отчеты только для текущего квартала или определенного диапазона дат

  • Создание отчетов о данных, относящихся только к пользователю, запрашивающему отчет

  • Вывод персонала только в пределах заданного отдела

Другие Интерактивные Эффекты

Интерактивные эффекты не ограничиваются прямым взаимодействием с пользователем с предложением WHERE. Те же самые принципы могут также использоваться, чтобы достигнуть других целей, таких как:

  • Получение входных значений из файла, а не от человека

  • Передача значений от одного SQL-оператора к другому

Отметьте: Как SQL Developer, так и SQL* Plus поддерживают переменные подстановки и команды DEFINE/UNDEFINE. Ни SQL Developer, ни SQL* Plus не имеет поддержки проверки допустимости (за исключением типа данных) данных, вводимых пользователем. Если они используются в сценариях, которые развертываются пользователям, переменные подстановки могут быть применены для атак с использованием инъекций кода SQL.

Далее: Арифметика с Датами

Смотрите также
Комментарии
Написать

(обязательно)

(обязательно)

Это не спам (обязательно)