Практические занятия № 1-19 по дисциплине "Администрирование и оптимизация СУБД Oracle" (Установка программного обеспечения Oracle. Разделяемый сервер Oracle), страница 5

Вы должны получить сообщение:

ORA-02396: exceeded maximum idle time, please connect again.


Практическое занятие по теме 7: сопровождение объектов схем

Описание ситуации. Необходимо создать объекты схемы для нового приложения управления запасами. Работайте как пользователь DBA1 с привилегией SYSDBA  в базе данных STUD.

Задачи:

•  Создание таблиц для хранения данных

•  Обеспечение ссылочной целостности с помощью ограничений

•  Создание индексов для улучшения доступа к данным

•  Изменение существующих таблиц

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

1.  Вернитесь в сеанс Enterprise Manager или подключитесь к EM как пользователь DBA1 с привилегией SYSDBA к базе данных STUD.

2. В табличном пространстве INVENTORY в схеме INVENTORY создайте таблицу PRODUCT_MASTER.

Спецификация таблицы:

PRODUCT_ID  number (7). Это поле главного ключа (имя ограничения PK_INV).

PRODUCT_NAME  varchar2(50) сограничением Not Null.

CODE  varchar2(10) с ограничением NotNull.

REORDER_THRESHOLD  number (5) с ограничением check, гарантирующим, что число  всегда больше нуля  (имя ограничения CHK_REORDER).

COST  number(5,2)

PRICE  number(5,2)

3.  В табличном пространстве INVENTORY в схеме INVENTORY создайте таблицу PRODUCT_ON_HAND.

Спецификация таблицы:

ON_HAND_ID  number (5). Это поле главного ключа.

PRODUCTID  number (7). Это поле должно быть внешним ключом, связанным с полем product_id таблицы product_master.

QUANTITY  number(5)

WAREHOUSE_CITY  varchar2(30)

LAST_UPDATE date

4.  Создайте таблицу OBSOLETE_PRODUCTS в схеме INVENTORY и разместите ее в табличном пространстве INVENTORY.

Спецификация таблицы:

PRODUCT_ID number (7). Это поле главного ключа. PRODUCT_NAME  varchar2(50) с ограничением Not Null.

CODE varchar2(20) с ограничением Not Null.

COST  number(5,2)

PRICE  number(5,2)

5.  Создайте в схеме INVENTORY индекс для столбцаPRODUCT_NAME таблицы OBSOLETE_PRODUCTS и разместите его в табличном пространстве INVENTORY. Выберите наиболее подходящий тип индекса: B-tree или Bitmap. Объясните Ваш выбор.

Вопрос. Почему в схеме INVENTORY четыре индекса, тогда как вы создавали только один?

6.  Создайте в схеме INVENTORY составной индекс с именем PROD_NAME для столбцов PRODUCTNAME и CODE таблицы PRODUCT_MASTER и разместите его в табличном пространстве INVENTORY. Просмотрите скрипт lab_07_06.sql (он содержит ошибку). Исправьте ее и запустите скрипт.

7.  При помощи SQL*Plus создайте в схеме INVENTORY составной индекс для столбцов PRODUCT_ID и QUANTITY таблицы PRODUCT_ON_HAND и разместите его в табличном пространстве INVENTORY. Индекс должен иметь имя POH_PROD_ID_QTY.

8.  Вы получили извещение об изменениях в приложении управления запасами, которое требует добавить два столбца в таблицу PRODUCT_MASTER:

PRIMARY_SOURCE с типом данных varchar2 и длиной 50, а также SECONDARY_SOURCE типом данных varchar2 и длиной 50.

Какая SQL команда должна быть выполнена?

9.   Кроме того, изменения в приложении требуют добавить в таблицу PRODUCTONHAND столбец LAST_UPDATE типа date.

10.  Изменения в приложении требуют добавить в таблицу OBSOLETE_PRODUCTS столбец OBSOLETED типа date.

11.  После этого было получено новое извещение об изменениях в приложении. В соответствие с ним необходимо удалить таблицу OBSOLETE_PRODUCTS и добавить в таблицу PRODUCT_MASTER столбец OBSOLETED типа date. Решите эту задачу при помощи Enterprise Manager. Какой раздел добавляется к команде для того, чтобы при удалении таблицы были удалены и ограничения на нее?

12.  В соответствие с еще одним извещением требуется создать в схеме INVENTORY представление с именем WAREHOUSE_VW   (Administration > Views), которое показывает (в указанном порядке):

наименование продукта; количество продукции, имеющееся в наличии;   наименования города, в котором находится склад.

Вы должны будете соединить две таблицы для того, чтобы создать это представление.