Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Database management system - CODE - TEORY.docx
Скачиваний:
4
Добавлен:
23.04.2019
Размер:
55.38 Кб
Скачать

Кто эту привилегию может назначать?

В своей схеме - никакая.

В чужой схеме - GRANT INDEX ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - владелец таблицы

В любой схеме - GRANT CREATE ANY INDEX; - администратор

27. Для чего используется ключевое слово hashkeys в операторе create cluster?

Показывает уникальное количестов хэщ-ключей, которое может сгенерировать хэш-функция.

(Показывает указывает количество ключей (общих строк таблицы),

которые предположительно будут храниться в кластере.)

28. Что такое индекс? Для чего он используется

Индекс - объект базы данных, который предназначен для ускорения поиска строк

в таблице по индексируемым столбцам.

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

указаных столбцов и использующие их для поиска.

29. Что такое двоичное дерево поиска? Объясните принцип применения двоичного дерева в индексах.

Двоичное дерево — древовидная структура данных, в которой каждый узел имеет не более двух потомков (детей).

Как правило, первый называется родительским узлом, а дети называются левым и правым наследниками.

это двоичное дерево, для которого выполняются следующие дополнительные условия (свойства дерева поиска):

Оба поддерева — левое и правое, являются двоичными деревьями поиска.

У всех узлов левого поддерева произвольного узла X значения ключей данных меньше, нежели значение ключа данных узла X.

У всех узлов правого поддерева произвольного узла X значения ключей данных больше, нежели значение ключа данных узла X.

30. Объясните принцип устройства B*-индекса.

B* индекс всегда сохраняет дерево в сбалансированном(все пути в дереве имеют примерно одинаковую длину) состоянии.

Листовые блок содержат по 2 элемента:

индексированные значения столбца и соотв указатель ROWID для строки, которая содержит значение столбца.

ROWID - уникальный указатель, котороы показывает физическое местоположение строки на диске.

31. Объясните принцип устройства bitmap-индекса.

Матрица, в которй 0 и 1 показывают есть такой ключ или нету.

Используют битовае карты для указания значения индексированного столбца.

32. В каких случаях следует применять индексы?

Когда нужно обеспечить быстрый поиск столбцов таблицы,а также операции соединения группировки, сортировки.

Индексация имеет смысл, когда нужно обеспечить одновременный доступ к не более чем 4-5% данных таблицы.

33. В каких случаях следует применять B*-индексы?

Хороши для данных с высокой кординальностью.

Хороши бля БД OLTP

Занимают много места

Быстро обновляются

34. В каких случаях следует применять bitmap -индексы?

Хороши для данных с низкой кординальностью.

Хороши для приложений хранилищ данных

Используют мало места

Плохо обновляются

Используются когда много данных, но мало ключей.

Быстрее чем B*-индексы в очень больших таблицах.

35. Какая привилегии необходимы пользователю для создания частного и публичного синонима?

Кто эту привилегию может назначать?

GRANT CREATE SYNONYM TO RL_PEKARCORE; --от Администратор

GRANT CREATE PUBLIC SYNONYM TO RL_PEKARCORE; --от Администратор

36. Объясните отличия между частным и публичным синонимами.

Частные видит только владелец, а публичные видят все.

Владельцем частного синонима явлется его создатель,а публичного PUBLIC

37. Перечислите три типа привилегий, поддерживаемых Oracle.

Объектные, Системные,

38. В чем разница между системными и объектными привилегиями?

Системные привелегиии может назначать только администратор, а объектные - владелец объекта.

39. Какой пользователь назначает системные привилегии?

SYSTEM

Или любой, у которого есть привеления GRANT ANY PRIVILEGE

40. Какой пользователь назначает объектные привилегии?

Только тот, который является владельцем объекта, либо имеет привелегию на чужой объект WITCH GRANT OPTION

41. Перечислите и поясните все типы объектных привилегий.

GRANT SELECT ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешение на выборку

GRANT INSERT ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешение на вставку

GRANT DELETE ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешение на удаление

GRANT UPDATE ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешение на обновление

GRANT ALTER ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешение на изменение таблицы

GRANT INDEX ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешиение на индексирование таблицы

GRANT REFERENCES ON PEKARCORE.AUDITORIUM_TYPE TO NIKCORE; - разрешает ссылаться на таблицу

WITH GRANT

--GRANT EXECUTE ON PEKARCORE TO NIKCORE;

42. Перечислите все представления словаря Oracle, которые применялись в данной лабораторной работе.

DBA_CLUSTERS

DBA_SEGMENTS

DBA_CLU_COLUMNS

DBA_SYS_PRIVS

DBA_SYNONYMS

DBA_INDEXES

43. Для чего используется ключевых слов cash/nocash, monitoring/nomonitiring в операторе create table?

Чтобы активировать автоматический сбор статистики для таблицы с помощью пакета DBMS_STATS,

нужно указать предложение MONITORING в конструкции CREATE TABLE или ALERT TABLE.

cash/nocash - сохранять в кэше результаты последнего запроса или нет

45. Объясните применение ключевых слов offline/online в операторе create tablespace.

offline/online позволяет управлять доступность табличного пространства для пользователей.

Существует 2 режима перевод табл. пространства. NORMAL - не нужно выполнять восстановления носители

и IMMEDIATE - нужно выполнить восстановление носителя.

46. Объясните применение ключевых слов logging/nologging в операторе create tablespace.

Для того чтобы указать вести журналирование повторного выполнения для объектов

данного табличного пространства или нет.

Представление (View)

CREATE VIEW V2 AS SELECT * FROM A;

SELECT * FROM V2;

22. Что такое представление. Для чего оно применяется.

Представление - это образ таблицы или набора таблиц, определенных оператором SELECT.

То есть это сохраненный SQL-запрос к таблице или группе таблиц.

23. Поясните назначение опции WITH READ_ONLY.

WITH READ_ONLY - гарантирует, что пользователи смогут только читать данные из представления.

То есть не смогут модифицировать записи в таблице.

24. Поясните назначение опции WITH CHECK OPTION.

WITH CHECK OPTION гарантирует, что после фиксации изменений доступ к данным из представления сохранится.

25. Что такое материализованное представление? Чем оно отличается от просто представления? В каких случаях применяется.

Материализованное представление - это таблица, хранящая в себе результат SQL-запроса к таблице или группе таблиц.

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

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

которые могут выполнятся часами или днями.

Дополнительные вопросы

26. Объясните смысл следующих инструкций физических атрибутов: INITRANS, MAXTRANS, PCTFREE, PCTUSED.

INITRANS - минимальное число транзакций, коорые могут изменять строки в данном блоке.

MAXTRANS - максимальное число транзакций, коорые могут изменять строки в данном блоке.

PCTFREE - % заполненности блока при котором можно выполнять SELECT.

Когда свободная память в блоке данных падает до PCTFREE,

в этот блок не вставляются новые строки, пока процент занятой памяти не упадет ниже PCTUSED.

PCTUSED – процент памяти в блоке, свободной для данных после вычета накладных расходов из общей памяти блока.

27. Объясните смысл инструкций хранения: INITIAL, NEXT, MINEXTENTS, MAXEXTENT, PCTINCREASE, FREELISTS, BUFFER_POOL.

INITIAL - Размер первого экстента

NEXT - размер следующего экстента

MINEXTENTS - количество эктентов, выделяемое при создании

MAXEXTENT - макс кол-во экстентов

PCTINCREASE - На сколько % каждый новый экстент больше предыдущего

FREELISTS - кол-во групп списков свободных блоков

BUFFER_POOL - указание, как хранить значения полученные при запросе:

28. В каких SQL-операторах применяются инструкции физических атрибутов и инструкции хранения.

В операторах DDL: CREATE, ALTER, DROP

При создании любого объекта для хранения данных (сегмента отката кластера, таблицы или индекса) можно задавать набор физических параметров.

Кроме того, эти параметры можно (и следует) указывать при создании ограничений PRIMARY KEY и UNIQUE;

их действие распространяется и на индекс, созданный для поддержки этих ограничений

29. Поясните назначение, принцип применения и распределения памяти в буферных пулах DEFAULT, KEEP, RECYCLE области SGA.

DEFAULT - повторное применение буферов кэш помещается в DEFAULT в самый хвост

KEEP - по возможности оставлять значения в оперативной памяти

RECYCLE - удалять сразу, как только значения окажутся не нужны.

Курсор

  1. Создайте анонимный блок (АБ), распечатывающий таблицу TEACHER с применением явного курсора LOOP-цикла. Считанные данные должны быть записаны в переменные, объявленные с применением опции %TYPE.

DECLARE

TT TEACHER.TEACHER%TYPE;

TN TEACHER.TEACHER_NAME%TYPE;

TP TEACHER.PULPIT%TYPE;

CURSOR CUR IS SELECT TEACHER, TEACHER_NAME, PULPIT FROM TEACHER;

BEGIN

OPEN CUR;

DBMS_OUTPUT.PUT_LINE('ROWCOUNT ='||CUR%ROWCOUNT);

LOOP

FETCH CUR INTO TT, TN, TP;

EXIT WHEN

CUR%NOTFOUND;

DBMS_OUTPUT.PUT_LINE(TT||' '||TN||' '||TP||' ROWCOUNT = '||CUR%ROWCOUNT);

END LOOP;

END;

  1. Разработайте АБ, демонстрирующий работу оператора SELECT с точной выборкой.

DECLARE

FACULTY_REC FACULTY%ROWTYPE;

BEGIN

SELECT * INTO FACULTY_REC FROM FACULTY WHERE FACULTY = 'ИДиП';

dbms_output.put_line(FACULTY_REC.FACULTY||' '||FACULTY_REC.FACULTY_NAME);

EXCEPTION

WHEN OTHERS

THEN dbms_output.put_line(SQLERRM);

END;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]