- •Лабораторная работа № 1 Тема: создание таблиц
- •Ссылка на таблицы других пользователей
- •Параметр default
- •Правила присвоения имен
- •Типы данных в Oracle
- •Ограничения
- •Ограничения целостности данных
- •Ограничение primary key
- •Ограничение foreign key
- •Ограничение check
- •Пример. Создание таблицы базы данных Film, Klient, Dogovor.
- •Ограничение not null
- •Ограничение unique
- •6 Regiser varchar2(20), Таблица создана.
- •Создание таблицы с заполнением строками из другой таблицы
- •Лабораторная работа №2
- •2 Values (1, 'Красотка', 'Поланский','12-12-1987', 30, 2);
- •1 Строка создана.
- •1 Строка создана. Копирование строк из другой таблицы
- •Insert into таблица (столбец[, столбец]}
- •3 Строки создано.
- •Обновление строк
- •1 Строка обновлена.
- •Команды явного управления транзакциями
- •Оператор конкатенации
- •Строки символов (литералы)
- •Обработка неопределенных значений
- •Функция nvl
- •Синтаксис
- •7 Строк выбрано. Преобразование nvl для различных типов
- •Лабораторная работа №4 Тема: ограничение количества выбираемых строк.
- •Азазель 40 5
- •7 Строк выбрано.
- •1 Иванов и.Н. 005363
- •Пример. Вывод названия фильмов и стоимости проката для фильмов, количество которых 3 и 5.
- •Сочетание символов в искомой строке
- •Строки не выбраны
- •2 From film 3 Азазель
- •Пример. Вывод кодов фильмов и их названий, имеющих режиссера.
- •Порядок выполнения операций Правила приоритета
- •1 Красотка 42 3
- •Пример.
- •Пример.
- •Числовые функции
- •Пример.
- •Использование арифметических операторов с датами
- •Арифметические операторы над датами
- •Функции для работы с датами
- •Пример.
- •Функции преобразования
- •Вывод даты в заданном формате
- •Форматы времени
- •Пример.
- •Элементы формата числа
- •Пример.
- •Лабораторная работа №7 Тема: групповые функции Групповые функции
- •Групповые функции
- •Пример. Вывод первого и последнего названия фильма из алфавитного списка всех фильмов.
- •8 Строк выбрано.
- •Предложение having
- •Пример.
- •Лабораторная работа №8 Тема: подзапросы
- •From таблица
- •(Select список_выбора
- •Однострочные подзапросы
- •Многострочные подзапросы
- •Лабораторная работа №9 Тема определение переменных во время выполнения Переменные подстановки с одним амперсантом
- •Команда set verify
- •Определение текстовых строк и дат с помощью переменных подстановки
- •Указание имен столбцов, выражений и текстовых строк во время выполнения
- •Определение переменных пользователя
- •Лабораторная работа №10 Тема: изменение таблиц и ограничений Добавление столбца
- •Изменение столбца
- •Добавление и удаление ограничений
- •Разрешение и запрет ограничений
- •Удаление таблицы
- •Команда rename:
- •Команда truncate: Синтаксис
- •Усечение таблицы.
- •Добавление комментариев к таблице
- •Лабораторная работа №11 Тема: создание последовательности
- •Создание последовательности
- •Проверка параметров последовательности
- •10 Строк выбрано. Псевдостолбцы nextval и currval
- •Пропуски в последовательности
- •Просмотр следующего свободного значения без его увеличения
- •Изменение параметров последовательности
- •Лабораторная работа № 12. Тема: словарь данных.
- •Запросы к словарю данных
- •Классы представлений
- •Прочие представления
- •Лабораторная работа № 13. Тема: создание представлений
- •2 As select filmId, namef, god_vip Дата_выпуска
- •13 Куклы 13.05.99
- •2 (Номер, Название, Дата)
- •2 (ИмяКлиента, посл_Выдача, Перв_выдача)
- •Типы индексов
- •2 (Номер, Название, Дата)
- •Удаление представления
- •Лабораторная работа №14 Тема: создание индексов
- •Создание индекса
- •Просмотр индексов
- •Удаление индекса
Ограничение not null
Ограничение NOT NULL запрещает неопределенные значения в столбце. Столбцы, не связанные ограничением NOT NULL, могут содержать неопределенные значения по умолчанию. Это ограничение может быть задано только на уровне столбца, а не таблицы.
Ограничение unique
Ограничение UNIQUE определяет столбец или набор столбцов как некоторый уникальный ключ. В таблице не существует двух строк с одинаковым значением для этого ключа. Неопределенные значения возможны, если уникальный ключ основан на одном столбце. Ограничения UNIQUE могут быть использоваться как для столбца, так и для таблицы. Составной уникальный ключ создается с помощью определения на уровне таблицы. Для уникального ключа на уровне столбца автоматически создается уникальный индекс. Ограничение UNIQUE не аналогично ограничению PRIMARY KEY и не является его синонимом.
Ограничение primary key
Ограничение PRIMARY KEY создает первичный ключ таблицы. Ограничение PRIMARY KEY — это столбец или набор столбцов, однозначно идентифицирующий каждую строку в таблице. Это ограничение требует уникальности конкретного столбца или набора столбцов и гарантирует отсутствие в них неопределенных значений. Ограничения PRIMARY KEY могут быть заданы как для столбца, так и для таблицы.
Ограничение foreign key
Ограничение FOREIGN KEY, направленное на обеспечение целостности ссылок, задает столбец или набор столбцов в качестве внешнего ключа и устанавливает связь с первичным или уникальным ключом той же самой таблице или между таблицами. Значение внешнего ключа должно совпадать с существующим значением в родительской таблице или быть неопределенным (NULL). Ограничения FOREIGN KEY могут быть заданы как на уровне столбца, так и на уровне таблицы. Внешний ключ, являющийся частью первичного ключа, не может быть неопределенным значением, поскольку ни одна часть первичного ключа не может иметь значение NULL.
Внешний ключ описывается комбинацией следующих ключевых слов:
FOREIGN KEY задает столбец в дочерней таблице как ограничение на уровне таблицы.
REFERENCES указывает таблицу и столбец в родительской таблице.
ON DELETE CASCADE означает, что если удаляется строка в родительской таблице, зависимые строки в дочерней таблице также будут удалены, а если отсутствует, то, строка родительской таблицы не может быть удалена.
Ограничение check
Ограничение CHECK определяет условие, которому должна удовлетворять каждая строка. Это условие может содержать те же конструкции, что и в запросах за исключением следующих:
Ссылок на псевдостолбцы CURRVAL, NEXTVAL, LEVEL и ROWNUM
Обращений к функциям SYSDATE, UID, USER и USERENV
Запросов со ссылками на другие значения в других строках
Ограничение CHECK может быть задано как на уровне столбца, так и на уровне таблицы. Синтаксис этого ограничения применим к любому столбцу таблицы, а не только к тому, для которого задано данное ограничение.
Пример. Создание таблицы базы данных Film, Klient, Dogovor.
SQL> create table film SQL> create table Klient
2 (filmID NUMBER(2) 2 (KlientID number(2)
3 CONSTRAINT filmID_PK Primary key, 3 constraint KlientID_pk primary key,
4 namef varchar2(25) 4 FIO varchar2(25),
5 CONSTRAINT namef_NN not null, 5 phone varchar2(11));
