- •107. Базы данных: семантическая модель “cущность–связь”.
- •Пример нарушения целостности базы
- •Понятие транзакции
- •105. Нормализация реляционных бд
- •103. Поддержка целостности в реляционных базах данных.
- •104. Язык sql
- •102. Реляционная модель данных: структурная часть.
- •Структурная часть: термины
- •Структурная часть: домен
- •Структурная часть: отношения
- •Структурная часть: свойства отношений
104. Язык sql
SQL символизирует собой структурированный язык запросов. Это- язык, который дает возможность создавать и работать в реляционных БД, являющиеся наборами связанной информации, сохраняемой в таблице.
Язык SQL предназначен для манипулирования данными в реляционных БД и для управления правами доступа к данным в многопользовательской среде.
Поэтому, в язык SQL в качестве составных частей входят:
- язык манипулирования данными;
- язык управления данными;
- язык определения данных.
Это различные команды одного языка.
Язык манипулирования данными используется в таблицах БД. Он состоит из 4 команд:
SELECT(выбрать)
INSERT(вставить)
UPDATE(обновить)
DELETE(удалить)
Язык определения данных используется для создания и изменения структуры БД и ее составных частей - таблиц, индексов, представлений, а также триггеров и сохраненных процедур. Основными его командами является:
CREATE DATABASE(создать БД)
TABLE(таблица)
VIEW(виртуальная таблица)
INDEX(индекс)
TRIGGER(триггер)
PROCEDURE(сохранение процедуры)
ALTER DATABASE( модифицировать БД)
…
DROP DATABASE(удалить БД)
…
Язык управления данными используется для управления правами доступа к данным и выполнение процедур в многопользовательском среде. Он состоит из двух основных команд:
GRANT(дать права)
REVОКE(забрать права)
Существует 2 разновидности команд SQL:
- интерактивный SQL;
- встроенный SQL.
Интерактивный SQL используется в специальных утилитах ( WI SQL, DBD), позволяющих в интерактивном режиме вводить запросы с использованием команд SQL, послать их для выполнения на сервер и получить результат в предназначенном для этапа окна.
Встроенный SQL используется в прикладных программах, позволяя и посылать запросы к серверу и обрабатывать полученные результаты.
102. Реляционная модель данных: структурная часть.
Edgar (Ted) Codd, математик и бывший стипендиат IBM, известный как создатель "реляционной" модели представления данных.
Ранние базы данных использовали либо жесткую иерархическую структуру, либо сложный план навигации по указателям на физическое размещение данных на магнитных лентах. Целые команды программистов требовались для того, чтобы сформулировать запрос на выделение нужной информации. Хотя такие базы данных могли быть эффективным в обработке специфических данных и запросов, разработанных для них, они были абсолютно негибкими. Новые виды запросов требовали сложного перепрограммирования, а добавление новых типов данных влекло за собой полное перепроектирование самой базы данных.
Структурная часть: термины
На основе реляционной модели были разработаны различные языки для доступа к реляционным данным. Фактически промышленным стандартом стал язык SQL (язык структурированных запросов). Но различные компании производители СУБД, предлагают свои реализации языка SQL. Эти реализации отличаются как друг от друга, так и от стандарта языка SQL.Существует следующая иерархия терминов:
Коммерческие СУБД ORACLE, Access
Стандарт SQL (тип данных)
Реляционная модель (домен)
Теория множеств. Математическая логика (множество).
Каждый более высокий уровень основывается на понятиях, определенных на более низком уровне. На каждом из уровней используется своя терминология.Отношение R — соответствует тому что мы называли таблицей.
Кортеж — соответствует строке этой таблицы, а атрибут A — столбцу. Количество кортежей называется кардинальным числом (m), а количество атрибутов — степенью (n).
Первичный ключ — уникальный идентификатор для таблицы, то есть столбец или комбинация столбцов, что в любой момент времени не существует двух строк, содержащих одинаковое значение в этом столбце или комбинации столбцов.
Домен D — общая совокупность значений, из которой берутся настоящие значения для определенных атрибутов определенного отношения.
