Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основы PL/SQL


Содержание

 

Преимущества языка PL/SQL и его использование в SQL*Plus. 3

Лексические единицы... 5

Структура блока PL/SQL.. 7

Раздел заголовка.. 8

Секция объявлений.. 10

ТИпы данных PL/SQL.. 12

Курсоры... 23

Управляющие структуры PL/SQL.. 31

Автономные транзакции.. 35

Секция обработки исключений.. 36

Директивы компилятора.. 40

Программные единицы PL/SQL.. 41

Динамический SQL.. 51

Встроенный динамический SQL.. 62

Пакет DBMS_OUTPUT. 64

ФАЙЛОВЫЙ ВВОД/ВЫВОД ПАКЕТ UTL_FILE.. 67

ПАКЕТ DBMS_PIPE.. 73

СОЗДАНИЕ ПРИЛОЖЕНИЙ БАЗ ДАННЫХ СРЕДСТВАМИ ODBC.. 81

Преимущества языка PL/SQL и его использование в SQL*Plus

Язык PL/SQL (Procedural Language extensions to the Structured Query Language) процедурное расширение структурированного языка запросов) — это хорошо структурированный, удобный и доступный язык, тесно интегрированный с базой данных Oracle. Pl/SQL стал первым языком, получившим поддержку в БД Oracle, и до сих пор остаётся наиболее популярным средством создания программных модулей и таких как процедуры, функции, пакеты и триггеры.

Преимущества использования PL/SQL:

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

2. добавляет управляющие структуры: ветвления, циклы, переходы; позволяет организовать цикл по записям, обрабатывая каждую по отдельности.

3. позволяет создавать процедуры, функции, триггеры, пакеты.

4. дает возможность создавать объектные типы и методы.

5. позволяет защитить программы, используя шифрование, хранить код программы на сервере.

6.экономит сетевой трафик, так как имеет блочную (пакетную) структуру

SQL*Plus. SQL*Plus – это интерактивный, управляемый командами интерфейс Oracle, используемый для работы с БД (создание и изменение описания таблиц, ввод и модификация данных, отладка запросов и программ, некоторые административные функции и т.п.), а также написания несложных отчетов. Утилита является основным интерфейсом БД для любого ее выпуска, так как включена во все версии сервера данных и доступна с сервера или с клиентской машины из командной строки или через браузер.

Для работы с SQL*Plus существует собственный набор команд, например таких как: @ – запуск командного файла; @@ – запуск вложенного командного файла; / – запуск команды или блока из буфера SQL; ACCEPT (принять), APPEND (добавить), BREAK (прервать), CHANGE (изменить), CLEAR (очистить), COLUMN (столбец), COMPUTE (вычислить), CONNECT (соединить), COPY (копировать), DEFINE (определить), DEL (удалить из буфера), DESCRIBE (описать), DISCONNECT (разъединить), EDIT (редактировать), EXECUTE (выполнить), EXIT (выход), GET (прочитать в буфер), HELP (организовать помощь), INPUT (ввести), LIST (вывести список), PAUSE (пауза), PRINT (печатать), RUN (выполнить), SAVE (сохранить), SET (установить), SHOW (показать), SQLPLUS (запуск SQL*Plus), START (запуск командного файла), VARIABLE (переменная) и др.

Кроме того, в SQL*Plus можно использовать команды языка SQL и блоки языка PL/SQL.

После запуска SQL*Plus (командой SQLPLUS) на экране появляется приглашение для ввода командной строки:

 

SQL>_

 

В эту строку можно ввести команду SQL, блок команд PL/SQL или команду SQL*Plus, например:

 

SQL> SELECT systimestamp FROM dual;

 

SQL> BEGIN

2:n:= 1;

3 END;

4 /

 

SQL> COLUMN (34*123+1456) HEADING 'Результат расчета';

 

Команды SQL и блоки PL/SQL опознаются по ключевому слову (SELECT, DELETE и т.п.) и не требуют символа продолжения перед переходом на другую строку, так как "ждут" символа завершения команды ";" для команд SQL и "/" для блоков PL/SQL.

Если во время ввода команды обнаружена ошибка, которая находится в строке ввода, то для ее исправления можно стереть клавишей Backspace конец текста, включая неправильный текст, и заново ввести правильный его вариант. Если же ошибка обнаружена в предшествующих строках, то придется либо заново вводить всю команду, либо воспользоваться одним из редакторов текста. Дело в том, что текст вводимой (текущей) команды SQL или блока PL/SQL попадает в буфер SQL и хранится там до ввода другой команды. Текст буфера может модифицироваться либо с помощью команд редактирования либо с помощью системного редактора, вызываемого командой EDIT. Команды SQL*Plus не запоминаются в буфере и не могут модифицироваться текстовым редактором.

В таблице показаны команды, позволяющие проверять, изменять или перезапускать команды SQL или блоки PL/SQL без их нового ввода. Большинство из них (кроме CLEAR, LIST, RUN и SAVE) воздействуют на единственную строку, называемую текущей и помечаемую при просмотре (команда LIST) символом "*".

Таблица Команды редактирования

Команда Абривиатура Назначение
APPEND text A text добавляет указанный текст (text) в конец текущей строки
CHANGE C/old/new/ заменяет старый текст (old) на новый (new) в текущей строке
CHANGE C/text/ удаляет указанный текст (text) из текущей строки
CLEAR BUFFER CL BUFF удаляет все строки из буфера SQL
DEL   удаляет текущую строку, делая текущей следующую
RUN или / R или / запускает текущую команду SQL
SAVE file SAV file сохраняет содержимое буфера SQL в файле file
GET file GET file загружает файл в буфер SQL

 

При выполнении команды SQL> EDIT будет вызван текстовый редактор операционной системы, в который будет помещено содержимое буфера SQL. Редактирование текста буфера ничем не отличается от редактирования любого текста в вызванном редакторе. По окончании редактирования обновленный текст следует сохранить в буфере (команда SAVE текстового редактора) и, если необходимо, в файле (команда SAVE AS... текстового редактора).

Таким образом, с помощью системного редактора можно создавать и редактировать файлы, состоящие из любых допустимых последовательностей команд SQL, PL/SQL и SQL*Plus, а затем выполнять их с помощью команд "START", "@" или "@@".

 

 

<== предыдущая лекция | следующая лекция ==>
Графический метод решения задач ЛП | Лексические единицы
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 703; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.