Название темы
| Методические рекомендации
|
1. Архитектура СУБД Oracle.
| Содержание лекции основано на материалах из основной литературы: [1] c. 21-30, [2] с. 28-36, [3] с. 79-134.
|
2. Проектирование реляционной базы данных.
| Содержание лабораторной работы основано на материалах из основной литературы: [2] с. 77-106. Реализуется логическая модель в виде ER-диаграммы. На примере системы заказов через Интернет.
|
3. Внутренние структуры базы данных.
| Содержание лекции основано на материалах из основной литературы: [4] с. 27-44, [2] с. 234-258, 264-293, 295-320.
|
4. Использование SQL*Plus. Внутренние структуры базы данных Oracle. Язык определения данных (DDL). Реализация физической схемы.
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 741-781, [2] с. 179-183. На основе логической модели данных выбранного примера, реализуется физическая модель. Пример сценария:
SET TERMOUT OFF
SET ECHO OFF
DROP USER ORDERMAN CASCADE;
CREATE USER ORDERMAN IDENTIFIED BY man;
GRANT CONNECT,RESOURCE,UNLIMITED TABLESPACE TO ORDERMAN IDENTIFIED BY man;
ALTER USER ORDERMAN DEFAULT TABLESPACE USERS;
ALTER USER ORDERMAN TEMPORARY TABLESPACE TEMP;
CONNECT ORDERMAN/man
DROP TABLE CUSTOMER;
CREATE TABLE CUSTOMER
(
NUM_CUSTOMER INTEGER NOT NULL,
NAME VARCHAR2(50) NULL,
ADDRESS VARCHAR2(100) NULL,
E_MAIL VARCHAR2(50) NULL,
CONSTRAINT XPKCUSTOMER PRIMARY KEY (NUM_CUSTOMER)
);
DROP TABLE LIST_ORDER;
CREATE TABLE LIST_ORDER
(
NUM_ORDER INTEGER NOT NULL,
DATE_ORDER DATE NULL,
PAYMENT INTEGER NULL
CONSTRAINT PAY CHECK (PAYMENT IN (0, 1)),
NUM_CUSTOMER INTEGER NULL,
CONSTRAINT XPKORDER PRIMARY KEY (NUM_ORDER),
CONSTRAINT FKARRANGES FOREIGN KEY (NUM_CUSTOMER) REFERENCES CUSTOMER
);
DROP TABLE PRODUCT;
CREATE TABLE PRODUCT
(
NUM_PRODUCT INTEGER NOT NULL,
NAME_PRODUCT VARCHAR2(50) NULL,
PRICE NUMBER NULL,
CONSTRAINT XPKPRODUCT PRIMARY KEY (NUM_PRODUCT)
);
DROP TABLE SHIPMENT;
CREATE TABLE SHIPMENT
(
DATE_SHIPMENT DATE NULL,
NUM_ORDER INTEGER NOT NULL,
CONSTRAINT XPKSHIPMENT PRIMARY KEY (NUM_ORDER),
CONSTRAINT FKFIX FOREIGN KEY (NUM_ORDER)
REFERENCES LIST_ORDER ON DELETE CASCADE
);
DROP TABLE LIST_PRODUCT;
CREATE TABLE LIST_PRODUCT
(
NUM_ORDER INTEGER NOT NULL,
NUM_PRODUCT INTEGER NOT NULL,
AMOUNT INTEGER NULL,
CONSTRAINT XPKLIST_PRODUCT PRIMARY KEY (NUM_ORDER, NUM_PRODUCT),
CONSTRAINT FKENTERS FOREIGN KEY (NUM_PRODUCT)
REFERENCES PRODUCT ON DELETE CASCADE,
CONSTRAINT FKDEFINES FOREIGN KEY (NUM_ORDER)
REFERENCES LIST_ORDER ON DELETE CASCADE
);
COMMIT;
SET TERMOUT ON
SET ECHO ON
Таблицы заполняются осмысленными данными.
|
5. Обработка SQL-операторов.
| Содержание лекции основано на материалах из основной литературы: [2] с. 43-55.
|
6. Использование SQL*Plus. Язык манипулирования данными (DML).
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 307-329, [2] с. 183-203. Разработка запросов к данным в реализованной схеме. Например:
1. Вывести имена покупателей и номера их заказов.
2. Вывести имена покупателей их e-mail и номера заказов, которые не оплачены.
3. Вывести названия продуктов, которые заказал покупатель с заданным именем.
|
7. Многопользовательский доступ к базе данных.
| Содержание лекции основано на материалах из основной литературы: [2] с. 58-73.
|
8. Использование SQL*Plus. Язык манипулирования данными (DML).
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 330-375, [2] с. 205-231. Разработка запросов к данным в реализованной схеме с использованием подзапросов и функций. Например:
1. Вывести номера заказов, которые оплачены, но не доставлены.
2. Вывести покупателя с максимальной суммой заказов.
|
9. Словарь данных.
| Содержание лекции основано на материалах из основной литературы: [1] c. 175-208, [2] с. 141-160.
|
10. Основы PL/SQL. Разработка программы на PL/SQL. Курсоры.
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 376-425, [2] с. 385-411, 413-423. Разработка запросов оформленных в форме курсоров к данным в реализованной схеме.
|
11. Использование свободного пространства базы данных. Определение размера объекта базы данных.
| Содержание лекции основано на материалах из основной литературы: [4] с. 95-113, [3] с. 257-338.
|
12. Внутренние структуры базы данных Oracle. Язык определения данных (DDL). Расчет выделяемой памяти.
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 291-294, [2] с. 295-297. Изменение табличных пространств, в соответствии со смыслом хранимых данных.
|
13. Резервное копирование и восстановление.
| Содержание лекции основано на материалах из основной литературы: [1] с. 809-863.
|
14. Основы PL/SQL. Пакеты. Триггеры.
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 376-630, [2] с. 441-460, 501-517. Создание хранимых процедур, функций и объединение их в пакет. Разработка триггеров в соответствии со смыслом задачи.
|
15. Оптимизация.
| Содержание лекции основано на материалах из основной литературы: [1] c. 880-906, [2] с. 743-779, [3] с. 519-647, [5] с. 29-262.
|
16. Сбор статистики. Планы выполнения.
| Содержание лабораторной работы основано на материалах из основной литературы: [1] c. 880-906, [2] с. 743-779, [3] с. 519-647, [5] с. 29-262. Оптимизация разработанных ранее запросов к данным.
|