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; просмотров: 157; Мы поможем в написании вашей работы! |

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