Num_gr VARCHAR2(10) not null,



Лабораторная работа №1 (4 часа)

Цель работы: научиться создавать, редактировать и удалять таблицы и их элементы средствами ORACLE Database Express Edition, а также строить запросы к ним.

 

Порядок выполнения работы.

Для выполнения лабораторных работ понадобится установить Oracle Database Express Edition 11g (или Oracle Database Express Edition 10g)

Начало работы в ORACLE Database Express Edition.

В меню ПУСК выберите Все программы > Oracle Database 10g Express Edition> Go To Database Home Page

В открывшемся окне введите username system, password manager (в аудитории 367) или тот пароль, который запрашивается при установке ORACLE Database Express Edition.

Вы вошли в систему с правами администратора.

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

Выберите в меню пункт SQL. Затем пункт SQL Command.

 

CREATE TABLESPACE

DATAFILE file_specification

[AUTOEXTEND OFF]

или [AUTOEXTEND ON [NEXT число K или M]

[MAXSIZE UNLIMITED или MAXSIZE число K или M]

[NOLOGGING или LOGGING]

[, file_specification

[AUTOEXTEND OFF]

или [AUTOEXTEND ON [NEXT число K или M]

[MAXSIZE UNLIMITED или MAXSIZE число K или M]

[NOLOGGING или LOGGING]]

[MINIMUM EXTENT число K или M]

[DEFAULT STORAGE storage_clause]

[ONLINE или OFFLINE]

[ PERMANENT или TEMPORARY]

 

 

- DATAFILE file_specification - определяет имена (или имя) файлов данных, составляющих табличное пространство. File_specification - это 'имя_файла' SIZE число (K или M) [REUSE]. Спецификация файла используется для указания имени и первоначального размера в (К)илобайтах или в (М)егабайтах файла данных. Параметр [REUSE] позволяет воспользоваться уже существующим в системе файлом.

Уточнения параметра DATAFILE:

 

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

- AUTOEXTEND ON - автоувеличение размера файла будет использовано. Дополнительно можно указать:

- NEXT число K или M - когда файл данных самоувеличивается, он изменяется на указанный объем.

- MAXSIZE UNLIMITED - размер файла будет ограничен лишь физическим диском и особенностями операционной системы.

- MAXSIZE число K или M - файл данных не может быть больше указанного объема.

Вот остальные параметры команды CREATE TABLESPACE:

 

- LOGGING - указывает, что в журнал выполненных операций будет заноситься информация о таблицах, индексах и разделах. Параметр по умолчанию. Журналирование может быть отменено для этих операций опцией NOLOGGING.

- NOLOGGING - журналирование не будет выполняться для операций, поддерживающих эту опцию.

- MINIMUM EXTENT число K или M - указывает минимальный размер экстентов табличного пространства.

- DEFAULT STORAGE storage_clause - указывает параметры по умолчанию хранения табличного пространства.

- ONLINE - табличное пространство становится оперативным сразу после своего создания.

- OFFLINE - табличное пространство недоступно непосредственно после своего создания (до тех пора, пока не будет переведено в оперативное состояние).

- TEMPORARY - табличное пространство будет использовано для хранения временных объектов.

- PERMANENT - указывает табличному пространству хранить перманентные объекты. (Опция по умолчанию).

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

Например,

 

CREATE TABLESPACE MYTBLSP DATAFILE 'C:\ORACLE\ONE.DBF' SIZE 100M

 

Создание схемы (пользователя).

Схема – это набор объектов. Объектами схемы являются логические структуры, непосредственно ссылающиеся на данные в базе данных. К объектам схемы относятся таблицы, представления, последовательности, синонимы, хранимые процедуры, функции, индексы и связи базы данных.

 

Для создания схемы нужно создать пользователя с помощью команды

 

CREATE USER user_name

IDENTIFIED  BY password

[ DEFAULT TABLESPACE tablespace_name

TEMPORARY TABLESPACE

  Tablespace_name

QUOTA integer [ K | M | G | T | P | E ]

   | UNLIMITED

   ON tablespace_name

[ QUOTA integer [ K | M | G | T | P | E ]

   | UNLIMITED

       ON tablespace_name

]

 

Например,

 

CREATE USER smithj

IDENTIFIED BY pwd4smithj

DEFAULT TABLESPACE tbs_perm_01

TEMPORARY TABLESPACE tbs_temp_01

QUOTA 20M on tbs_perm_01;

 

Назначьте пользователю права с помощью команды Grant:

 

Grant connect, resource to username

Можно дать пользователю все права администратора (не рекомендуется):

Grant DBA to username

 

В правом верхнем углу нажмите Logout.

Теперь вы можете войти в систему с именем и паролем только что созданного пользователя и начать работу.

 

Задание.

Создайте таблицы для согласованной с преподавателем предметной области (Не менее 5-ти таблиц. Как минимум, одна из таблиц должна содержать дату).

 

Определите первичные ключи. Определите ограничения. Определите внешние ключи. Заполните таблицы тестовыми данными (Не менее 5-ти записей для родительских сущностей, не менее 10-ти для дочерних). При заполнении первичных ключей используйте последовательности. Измените и удалите некоторые данные. Добавьте и удалите какие-нибудь столбцы, удалите какую-либо таблицу.

 

Написать и выполнить 20 сложных запросов к БД (в т.ч. подзапросов, запросов с агрегатными функциями, группировками, коррелирующих подзапросов, а также с использованием операторов UNION, UNION ALL, INTERSECT, MINUS).

 

Все это должно быть выполнено ТОЛЬКО командами SQL.

 

Для ввода команд SQL выберите в меню пункт SQL, а затем SQL Command. Здесь вы можете вводить команды и запускать их на выполнение.

Для просмотра полученных результатов и связей выберите пункт меню Object Browser.

 

Создание таблиц.

Создать таблицу для хранения данных можно с помощью команды CREATE TABLE языка SQL. Это одна из команд языка определения данных DDL. Команды DDL являются подмножеством команд SQL и используются для создания, изменения и удаления структур базы данных Oracle.

Синтаксис:

CREATE TABLE [схема.] таблица

       (столбец тип_данных [ DEFAULT выражение]

       [ограничение_столбца],

...

       [ограничение таблицы]);

где: схема – то же, что имя владельца,

таблица – имя таблицы,

DEFAULT выражение – задает значение по умолчанию, используемое при отсутствии значения в команде INSERT (вставка),

столбец - имя столбца,

тип_данных – тип данных и длина столбца,

ограничение_столбца – правило целостности как часть определения столбца,

ограничение_таблицы – правило целостности как часть определения таблицы.

Параметр DEFAULT позволяет назначить значение столбца по умолчанию. Этот параметр исключает появление неопределенных значений при вставке строки без конкретного значения в данном столбце.

Основные типы данных

VARCHAR2(размер) Символьные значения переменной длины
CHAR(размер) Символьные значения фиксированной длины
NUMBER Число с плавающей точкой
NUMBER(p,s) Числовое значение, p –общее количество десятичных цифр, s – количество цифр справа от десятичной точки
DATE Значения даты и времени

 

Ограничения

NOT NULL Означает, что данный столбец не может содержать неопределенных значений
UNIQUE Указывает, что столбец или набор столбцов содержит значения, которые должны быть уникальны для всех строк таблицы. В таблице не существует двух строк с одинаковым значением этого ключа, но неопределенные значения возможны.
PRIMARY KEY Уникально идентифицирует каждую строку таблицы
FOREIGN KEY Устанавливает и поддерживает отношения между данным столбцом и столбцом таблицы, на которую делается ссылка, с помощью внешнего ключа.
CHECK Задает условие, которое должно выполняться.

 

Ограничение на уровне столбца – синтаксис

 Столбец [ CONSTRAINT имя ограничения] тип ограничения

 

Ограничение на уровне таблицы – синтаксис

[ CONSTRAINT имя ограничения] тип ограничения (столбец…)

Если вы сами не присваиваете имя ограничению, Oracle создает его в формате SYS_Cn, где n – целое число, обеспечивающее уникальность имени ограничения.

Ограничение FOREIGN KEY.

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

  • FOREIGN KEY задает столбец в дочерней таблице как ограничение на уровне таблицы.
  • REFERENCES указывает таблицу и столбец в родительской таблице.
  • ON DELETE CASCADE означает, что если удаляется строка в родительской таблице, зависимые строки в дочерней таблице также будут удалены.Если этот параметр отсутствует, строка родительской таблицы не может быть удалена, если ссылка на нее имеется в дочерней секции.

 

Пример:

Команда создания таблицы о номерах группы.

CREATE TABLE groups

(id NUMBER(5) CONSTRAINT groups_pk PRIMARY KEY,

num_gr VARCHAR2(10) not null,

Form VARCHAR2 (2) not null,


Дата добавления: 2018-10-26; просмотров: 173; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!