DeepEdit!

Программирование баз данных на Oracle, техническая документация, литература, статьи и публикации

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

DML в PL/SQL

Допустимыми операторами DML являются SELECT (выбрать), INSERT (вставить), UPDATE (обновить) и DELETE (удалить). Каждый оператор действует в соответствии со своим названием: с помощью SELECT в таб­лице выбираются строки, указанные в условии WHERE; посредством INSERT к таблице базы данных добавляются строки; с помощью UPDATE модифицируются строки, указанные в условии WHERE; с помощью DELETE эти строки удаляются. Помимо условия WHERE, в этих операто­рах могут применяться и другие конструкции (см. ниже).
Когда SQL-операторы выполняются из SQL*Plus, результаты выводятся на экран (см. рис. 4.1). Для операторов UPDATE, INSERT и DELETE SQL*Plus возвращает число обработанных строк, а для оператора SELECT — строки, указанные в запросе.
Все значения, используемые для изменения содержимого таблицы classes, жестко программируются, т.е. они известны во время написания этого опе­ратора. В PL/SQL ограничения на применение переменных отсутствуют. Переменные могут указываться в любом месте SQL-оператора, где разре­шены выражения. Переменные, используемые таким образом, называют­ся переменными присваивания или переменными привязки (bind variable). Например, в приведенном операторе UPDATE можно заменить жестко заданное значение, обозначающее число зачетов, переменной привязки:
Выходные данные запросов также можно сохранить в переменных. В SQL-операторе разрешается заменять переменными только выражения. Особенно отметим, что имена таблиц и столбцов должны быть известны. Дело в том, что при ранней привязке имена объектов Oracle должны быть известны во время компиляции. По определению, значение пере­менной до выполнения программы неизвестно. Чтобы обойти это огра­ничение, можно вновь воспользоваться динамическим SQL.


 









jAntivirus