Основные понятия, связанные с SQL в Oracle: база данных -> модель данных, СУБД; реляционная модель; язык запросов и изменения данных -> SQL -> диалект SQL в Oracle.
(1) «Собрание данных, организованных для особо быстрого и удобного способа поиска и извлечения (например из ЭВМ) » (Webster’s Tenth New Collegiate Dictionary, 1967; www.webster.com/cgi-bin/dictionary)
(2) «Собрание структуризованных данных в ЭВМ, поддерживаемое СУБД, которая обеспечивает различным приложениям различный вид данных» (F. Pascal, Understanding Relational Databases with examples in SQL-92, New York, NY: John Whiley & Sons, 1993)
(3) «База данных – набор аксиом. Результат на запрос к базе есть теорема. Процесс вывода теоремы из аксиом есть доказательство. Доказательство осуществляется манипулированием символов по условленым математическим правилам. Доказательство [то есть, результат запроса к базе] настолько же здрав и логичен (consistent), насколько здравы и логичны правила» (H. Darwen. The Duplicity of Duplicate Rows. Relational Database Writings 1989 – 1991, Reading, MA: Addison-Wesley, 1992)
Обобщение:
(0) «Совокупность всех данных некоторой прикладной области» (Филиппов В. И. Общее описание системы КОМПАС. // Автоматизация программирования. Москва: ВЦ АН СССР, 1989)
Выводы:
n Модель данных
n Система долговременного хранения данных для общего пользования
n Компьютерная (программная) система управления данными
Обеспечивает работу приложений и пользователей с информационной моделью:
n На ЭВМ, разной архитектуры с установленными на них различными операционными системами;
n В компьютерных сетях разных типов, работающих по различным протоколам;
n С различными графическими и символьными системами представления информации.
Основная идея СУБД:
n Передача управления данными из прикладной программы и/или от пользователя, одной специальной системе, которая вне зависимости от того, какая программа, или версия программы, или же какой пользователь работает с данными, единым во всех случаях образом
ú защищает данные от рассогласованности,
ú оптимизирует выполнение операций над данным,
ú оптимизирует обращение к данным,
ú и т.д.
Некоторые функции, которые обеспечивают современные СУБД:
n Поддержка логической модели данных (определение данных, оперирование данными)
n Восстановление данных (транзакции, журнализация, контрольные точки)
n Управление одновременным доступом
n Безопасность данных (права доступа)
n Самостоятельная оптимизация выполнения операций
n Другие функции (администрирование, статистика, распределение данных и т.д.)
R-таблица:
n Перечень уникальных имен («столбцов»), и неупорядоченый набор разных строк, состоящих из перечня значений («атрибутов»), соответствующих именам. Значения атрибутов в строке могут браться только из области определения, сформулированной для столбца («доменов»).
n Единственный вид зависимости значений атрибутов друг от друга (но зависимостей может быть несколько).
(Замечание: «таблица» – на самом деле отношение специального вида, а табличное представление – всего лишь одно из возможных для такого отношения).
Реляционная база данных:
n Собрание R-таблиц
n Ничего кроме R-таблиц.
Все зависимости описываются явно и только значениями полей (в других моделях может быть иначе). Никаких «подразумеваемых» зависимостей (в том числе на уровне программной логики) помимо сформулированных схемой данных нет. (Разграничение программной логики и описания данных).
Нормализация и ее значение. “1-ая нормальная форма” (скалярность, атомарность атрибутов).
Зависимость значений атрибутов строки в таблице для “3-ей нормальной формы”:
Денормализация: плюсы и минусы.
Правила Кодда соответствия модели.
Проблемы реализации. Некоторые несоответствия всех имеющихся реализаций (в т.ч. Oracle):
n повторяющиеся строки,
n нет реляционных “доменов” (вместо этого “типы” данных, очень примитивно),
n трехзначная логика,
n “ручная” оптимизация запросов,
n другие.
n Объектная модель (объекты, классы/типы, методы/операторы/функции, сообщения; инкапсуляция, уникальный идентификатор объекта, наследование, полиморфизм операций)
n Объектно-реляционная модель (класс = домен или объект = строка ?)
n Многомерная модель
n Дедуктивная модель (возможность получения новых фактов
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.