Проектирование реляционной базы данных
Двенадцать правил Кодда [1] представляют собой набор из тринадцати правил ( пронумерованных от нуля до двенадцати ), предложенных Эдгаром Ф. Коддом , пионером реляционной модели баз данных , разработанных для определения того, что требуется от системы управления базами данных , чтобы она считалась реляционной , т. е. системой управления реляционными базами данных (СУРБД). [2] [3] Иногда их называют «Двенадцатью заповедями Кодда». [4]
История
Кодд первоначально изложил правила в 1970 году и развил их далее в докладе на конференции 1974 года. [5] Его целью было не допустить размывания видения изначальной реляционной базы данных, поскольку поставщики баз данных в начале 1980-х годов суетились, пытаясь переупаковать существующие продукты под реляционный лоск. [ необходима цитата ] Правило 12 было специально разработано для противодействия такому позиционированию. [ необходима цитата ]
В то время как в 1999 году в одном учебнике говорилось: «В настоящее время большинство СУРБД... проходят тест», [5] в другом, в 2007 году, утверждалось, что «ни одна система баз данных не соответствует всем двенадцати правилам». [6] Сам Кодд в своей книге «Реляционная модель для управления базами данных: версия 2» признал, что хотя его первоначальный набор из 12 правил может быть использован для грубых различий, 333 признака его реляционной модели версии 2 (RM/V2) необходимы для различий более тонкого уровня. [7]
Правила
Правило 0: Основное правило: любая система, которая рекламируется или заявляется как система управления реляционными базами данных, должна иметь возможность управлять базами данных исключительно посредством своих реляционных возможностей.
Правило 1: Правило информации :
- Вся информация в реляционной базе данных представлена явно на логическом уровне и только одним способом – значениями в таблицах.
Правило 2: Правило гарантированного доступа :
- Логический доступ к каждому элементу данных (атомарному значению) в реляционной базе данных гарантируется путем использования комбинации имени таблицы, значения первичного ключа и имени столбца.
Правило 3: Систематическая обработка нулевых значений :
- Нулевые значения (отличные от пустой строки символов или строки пустых символов и отличные от нуля или любого другого числа) поддерживаются в полностью реляционных СУБД для представления отсутствующей информации и неприменимой информации систематическим образом, независимо от типа данных.
Правило 4: Динамический онлайн- каталог , основанный на реляционной модели :
- Описание базы данных представлено на логическом уровне таким же образом, как и обычные данные, так что авторизованные пользователи могут применять к его запросу тот же реляционный язык, который они применяют к обычным данным.
Правило 5: Правило подъязыка комплексных данных :
- Реляционная система может поддерживать несколько языков и различные режимы использования терминала (например, режим заполнения пропусков). Однако должен быть по крайней мере один язык, операторы которого могут быть выражены, согласно некоторому четко определенному синтаксису, как строки символов, и который является всеобъемлющим в поддержке всех следующих элементов:
- Определение данных.
- Посмотреть определение.
- Манипулирование данными (интерактивное и программное).
- Ограничения целостности.
- Авторизация.
- Границы транзакции (начало, фиксация и откат).
Правило 6: Правило обновления представления :
- Все представления, которые теоретически могут быть обновлены, также могут быть обновлены системой.
Правило 7: Правило реляционных операций / Возможно для высокоуровневой вставки, обновления и удаления :
- Возможность обработки базового отношения или производного отношения как одного операнда применима не только к извлечению данных, но и к вставке, обновлению и удалению данных.
Правило 8: Физическая независимость данных :
- Прикладные программы и терминальные действия остаются логически неизменными при внесении любых изменений в представления хранилища или методы доступа.
Правило 9: Логическая независимость данных :
- Прикладные программы и терминальные действия остаются логически нетронутыми, когда в базовые таблицы вносятся любые сохраняющие информацию изменения, которые теоретически допускают сохранение информации.
Правило 10: Честность и независимость :
- Ограничения целостности, специфичные для конкретной реляционной базы данных, должны определяться на подъязыке реляционных данных и храниться в каталоге, а не в прикладных программах.
Правило 11: Независимость распределения :
- Конечный пользователь не должен видеть, что данные распределены по разным местам. У пользователей всегда должно создаваться впечатление, что данные находятся только в одном месте.
Правило 12: Правило неподрывной деятельности :
- Если реляционная система имеет язык низкого уровня (одна запись за раз), то этот низкий уровень не может быть использован для подрыва или обхода правил и ограничений целостности, выраженных в реляционном языке более высокого уровня (несколько записей за раз).
Смотрите также
Ссылки
- ^ «12 правил Кодда». RelDB.org. 2019-06-30 . Получено 14 августа 2020 г.
- ↑ Кодд, Эдгар Франк (14 октября 1985 г.), «Действительно ли ваша СУБД реляционная?», Computerworld.
- ↑ Кодд, Эдгар Франк (21 октября 1985 г.), «Работает ли ваша СУБД по правилам», Computerworld.
- ^ Коули, Стюарт (2017). Человек против больших данных: повседневные данные объяснены. ISBN 9781781317563. Получено 22 января 2022 г. .
- ^ ab Kline, Kevin; Gould, Lee; Zanevsky, Andrew (1999). Программирование Transact-SQL: охватывает Microsoft SQL Server 6.5 /7.0 и Sybase Adaptive Server 11.5. ISBN 9781565924017. Получено 22 января 2022 г. .
- ^ Хесс, Кеннет (2007). Microsoft Office Access 2007: L Line, Экспресс-линия к обучению. ISBN 9780470107904. Получено 22 января 2022 г. .
- ^ Кодд, Эдгар Ф. (1990). Реляционная модель управления базами данных: Версия 2. Addison-Wesley Longman Publishing Co., Inc. ISBN 9780201141924.
Дальнейшее чтение
- Кодд, Эдгар Ф. (1990). Реляционная модель управления базами данных: Версия 2. Addison-Wesley. ISBN 9780201141924.
- Харрингтон, Ян Л. (2002). «Правила Кодда». Реляционная база данных с понятным объяснением . Серия Моргана Кауфмана по системам управления данными (2-е изд.). Морган Кауфманн. ISBN 9781558608207.
- Кришна, С. (1992). "Критерии оценки систем реляционных баз данных". Введение в базы данных и системы баз знаний . Компьютерные науки. Том 28. World Scientific. стр. 91 и далее. ISBN 9789810206192.