СодержаниеФункциональное ядро Поддержка работы с датой/временем Управление целостностью Активные базы данных Базовая поддержка объектов (Basic Object Support) Расширенная поддержка объектов (Enhanced Object Support) Стандартизация управления и обмена данными. Лекция №2: Основы SQL Фазы выполнения SQL-оператора Применение языка SQL CONNECT TO MyDB1 USER User1/Password1 Создание таблицы Primary key Foreign key Определение ограничений для таблицы Set default Лекция №3: Формирование запросов средствами языка SQL Select [distinct] WHERE condition] [GROUP BY FROM определяет одну или несколько таблиц или подзапросов, используемых для извлечения данных. Фраза INTO EXISTS - предикат существования UNIQUE - предикат уникальности Вариант сравнения Функции агрегирования Count (*) Упорядочивание результирующего набора Создание таблиц по образцу Соединение таблиц Перекрестное соединение(CROSS JOIN) Cross join Left join [outer] Внутреннее соединение (INNER JOIN) Внешнее левое соединение LEFT JOIN [OUTER] Внешнее правое соединение RIGHT JOIN [OUTER] Полное внешнее соединение FULL JOIN [OUTER] Соединение по указываемым столбцам Соединение по предикату Лекция №4: Выполнение сложных SQL-запросов Corresponding by Лекция №5: Использование вложенных SQL-запросов Коррелированные подзапросы Построение предиката для подзапроса, возвращающего несколько строк Where exists Применение подзапросов в операторах изменения данных Оператор INSERT Оператор DELETE Оператор UPDATE Условное выражение CASE Values (1+ Лекция №6: Работа с представ-лениями. Типы данных. Оператор CREATE VIEW Оператор запроса SELECT Изменение данных в представлениях Опции [WITH [CASCADED | LOCAL] CHECK OPTION Типы данных Double precision Функции даты/времени Лекция №7: Транзакции в базах данных Фиксация транзакции Автоматическая фиксация изменений Проблемы параллельного доступа с использованием транзакци Неповторяющееся чтение "Грязное" чтение Rollback work Потерянное обновление Фантомная вставка Уровни изоляци SERIALIZABLE - последовательное выполнение READ COMMITED - фиксированное чтение READ UNCOMMITED - нефиксированное чтение Уровень изоляции Repeatable read Read commited Read uncommited Определение параметров транзакции Set transaction Set transaction isolation level serializable Лекция №8: Контроль доступа к базе данных Предоставление и снятие привилегий Отмена привилегии Многоуровневый контроль доступа в БД Oracle With admin option GRANT SELECT, UPDATE ON tbl1 TO PUBLICGRANT Системное представление Лекция №9 : Встроенный SQL Exec sql begin declare section Exec sql end declare section Основная программа Переменные во встроенном SQL Exec sql begin declare section Применение INTO-переменных Переменные связи Явный курсор Объявление курсора Обработка NULL-значений Exec sql begin declare section Позиционированные операторы Обработка ошибок EXEC SQL WHENEVER SQLERROR GOTO Err_1 OCCI-интерфейс для Oracle Environment::terminateEnvironment (env) Лекция №10: Динамический SQL Одношаговый интерфейс Многошаговый интерфейс Динамические параметры Динамические параметры Character - 1 Set descriptor. Оператор DESCRIBE Динамические курсоры Allocate cursor Лекция №11: Основы языка PL/SQL Типы данных Встроенные типы данных Ссылочные типы Числовые типы Символьные типы Определение подтипа Empty_clob () Приведение типов Объявление переменных и констант Объявление переменной Атрибуты %TYPE и %ROWTYPE Атрибут %ROWTYPE Операторы управления языка PL/SQL If-then-end if Операторы выбора ELSIF condition3 THEN Операторы цикла Операторы безусловного перехода DECLARE i1 INTEGER Лекция №12: Коллекции и записи Вложенные таблицы Индексированные таблицы Is table of Is {varray Инициализация коллекций Методы, применяемые для работы с коллекциями First, last Причина ошибки Is record Begin -- … Лекция №13: Объектно-ориентированное программирование в PL/SQL Спецификация и тело объектного типа Or replace Not] final Create type body Сравнение значений объектного типа Конструкторы объектного типа Пакеты языка PL/SQL Create package Create package body Create procedure IS [local declarations]BEGIN Return boolean Return false Перегружаемые подпрограммы Рекурсивные и взаимно рекурсивные вызовы подпрограмм Return 1; else Return 1; else Внешние процедуры Create function DECLARE var1 BINARY_INTEGER; x BINARY_INTEGER; y BINARY_INTEGER;BEGIN Лекция №14: Курсоры Явный курсор Оператор CURSOR Оператор FETCH CURSOR cursor_name [(parameter[, parameter]...)] [RETURN CURSOR c2 RETURN OPEN c1; -- Открытие курсора c1LOOP FETCH CURSOR cursor_name [(parameter[, parameter]...)] RETURN Использование курсора в цикле FOR Переменная типа REF CURSOR Is ref cursor OPEN {cursor_variable_name | :host_cursor_variable_name} FOR Exec sql end declare section FETCH {cursor_variable_name | :host_cursor_variable_name} INTO
|