Язык запросов SQL


Создание многотабличной реляционной базы данных


Глава 5 Создание многотабличной реляционной базы данных
Глава 5. Создание многотабличной реляционной базы данных...
В этой главе ...
В этой главе... Что должно быть в базе данных Определение отношений между элементами базы данных Связывание таблиц с помощью ключей Проектирование целостности данных Нормализация...
Проектирование базы данных
Проектирование базы данных При проектировании базы данных выполните следующие основные действия (подробно о каждом из них рассказывается в последующих разделах). Решите, какие объекты долж...
Действие 1 определение объектов
Действие 1: определение объектов Первое действие, которое предстоит выполнить при проектировании базы данных, — это решить, какие аспекты системы являются достаточно важными, чтобы быть включенн...
Действие 2 определение таблиц и столбцов
Действие 2: определение таблиц и столбцов Главные объекты переводятся в таблицы базы данных. И у каждого из главных объектов имеется набор связанных между собой атрибутов, которые переводятся в...
Внимание
Внимание При проектировании структуры базы данных важно учитывать интересы ее будущих пользователей, а также лиц, принимающих решения на основе ее информации. Если созданная вами "разумная&qu...
Действие 3 точное определение таблиц
Действие 3: точное определение таблиц Теперь для каждого объекта вам необходимо точно определить таблицу, а для каждого атрибута — столбец. В табл. 5.1 показаны таблицы базы данных VetLab....
Таблица 5 1 Таблицы базы данных VetLab
Таблица 5.1. Таблицы базы данных VetLab. Таблица Столбцы CLIENT (фирма-клиент) Client Name (название фирмы-клиента) Address 1 (адрес 1)...
Таблицы и связи базы данных VetLab
Рисунок 5.1. Таблицы и связи базы данных VetLab На Рисунок 5.1 показаны четыре различных отношения типа "один ко многим". В изображении отношения одна стрелка указывает на сторону &quo...
Ускорение работы базы данных с помощью ключей
Ускорение работы базы данных с помощью ключей В проектировании баз данных используется хорошее правило: в таблице каждая строка отличается от любой другой, т.е. каждая строка должна быть уникаль...
Первичные ключи
Первичные ключи Чтобы реализовать в базе данных VetLab идею ключей, при создании таблицы можно сразу указывать ее первичный ключ. В следующем примере будет достаточно одного столбца (при условии...
Работа с индексами
Работа с индексами Спецификация SQL:2003 к теме индексов не обращается, но это не значит, что они являются редкой или даже необязательной частью системы баз данных. Индексы поддерживаются каждой...
Что такое индекс
Что такое индекс Данные в таблице обычно отображаются в том порядке, в каком их в нее первоначально ввели. Однако такой порядок может не иметь ничего общего с тем порядком, в котором затем требу...
Таблица 5 2 Таблица CLIENT
Таблица 5.2. Таблица CLIENT ClientName Address1 Address2 City State Butternut Animal Clinic 5 Butternut Lane Hudson NH Amber Vet...
Таблица 5 3 Индекс по названию клиента для таблицы CLIENT
Таблица 5.3. Индекс по названию клиента для таблицы CLIENT ClientName Указатель к таблице данных Amber Veterinary, Inc. 2 Butternut Animal Clinic 1...
Зачем нужен индекс
Зачем нужен индекс Предположим, мне нужно обрабатывать таблицу в том порядке, при котором значения из поля ClientName будут выстроены по алфавиту. При этом у меня есть индекс, в котором значения...
Поддержание индекса
Поддержание индекса Если индекс создан, то его необходимо поддерживать. К счастью, вместо вас индексы поддерживает ваша система СУБД, которая обновляет их каждый раз, когда вы обновляете соответ...
Внимание
Внимание Не попадитесь на удочку, создавая индексы для получения относящихся к заказам данных, которые вы вряд ли когда-нибудь будете использовать. С поддержкой индекса связана определенная потеря...
Обеспечение целостности
Обеспечение целостности База данных представляет ценность лишь тогда, когда вы в достаточной степени уверены, что находящиеся в этой базе данные правильные. Например, неправильные данные в меди...
Смысловая целостность
Смысловая целостность Каждая таблица базы данных соответствует какому-либо объекту реального мира. Такой объект может быть физическим или умозрительным, но его существование в некотором смысле н...
Доменная целостность
Доменная целостность Обычно вы не можете гарантировать, что конкретный элемент данных из базы правильно введен, но можете хотя бы определить, разрешено ли его использование. У многих элементов д...
Ссылочная целостность
Ссылочная целостность Даже если в базе данных для каждой таблицы установлены целостность объекта и доменная целостность, то этой базе все равно грозят неприятности, происходящие из-за того, что...
Области возможных трудностей
Области возможных трудностей Покушения на целостность данных приходится ждать с самых разных сторон. Некоторые из этих неприятностей возникают только в многотабличных базах, в то время как други...
Ввод неправильных данных
Ввод неправильных данных В документах или файлах с исходной информацией, которыми вы пользуетесь для заполнения своей базы, могут быть неправильные данные. Они могут быть неправильным вариантом...
Ошибка оператора
Ошибка оператора Ваши исходные данные могут быть правильными, но оператор при вводе поймет их неправильно. Ошибка такого рода может привести к тем же трудностям, что и ввод неправильных данных....
Механическое повреждение
Механическое повреждение При механическом повреждении носителя данных, на котором была открыта таблица базы данных, данные этой таблицы могут быть испорчены. Главная защита против подобной непри...
Злой умысел
Злой умысел Не следует исключать возможности умышленной порчи данных. Ваша первая линия обороны — это запрещение доступа к базе данных потенциально опасным пользователям, а также ограничение дос...
Избыточность данных
Избыточность данных В тех базах, которые организованы иерархически, избыточность данных — это существенная проблема. Впрочем, она имеет место и в реляционных базах. Такая избыточность не только...
Превышение технических возможностей базы данных
Превышение технических возможностей базы данных Система базы данных может работать безукоризненно годами, а затем периодически начать выдавать ошибки, которые постепенно становятся все более сер...
Ограничения
Ограничения В этой главе об ограничениях говорилось как о механизме, благодаря которому в табличный столбец могут быть введены только данные из домена этого столбца. Ограничение (constraint) — э...
Ограничения столбцов
Ограничения столбцов Пример ограничения столбца показан в следующем операторе языка определения данных DDL: CREATE TABLE CLIENT ( ClientName CHARACTER (30), NOT...
Ограничения таблиц
Ограничения таблиц Ограничение PRIMARY KEY указывает на то, что столбец, к которому оно применено, является первичным ключом. Таким образом, это ограничение относится ко всей таблице и эквивален...
Нормализация базы данных
Нормализация базы данных Среди способов организации данных есть такие, которые лучше всех остальных, а есть такие, которые более логичны, некоторые — проще. Кроме того, имеются и такие, которые,...
Эта таблица SALES ведет к аномалиям изменения
Рисунок 5.2. Эта таблица SALES ведет к аномалиям изменения Ваша компания продает моющие средства для дома и предметы личной гигиены, и за один и тот же товар все покупатели платят одинаково. Все...
Таблица SALES разбита на две другие
Рисунок 5.3. Таблица SALES разбита на две другие На Рисунок 5.3 изображено, что таблица SALES разделена на две новые таблицы. Таблица CUST_PURCH (покупки) содержит данные о сделанных у вас...
Первая нормальная форма
Первая нормальная форма Чтобы быть в первой нормальной форме (1НФ), таблица должна обладать такими качествами. Быть двумерной, т.е. состоять из строк и столбцов. В каждой строке должны...
Вторая нормальная форма
Вторая нормальная форма Чтобы оценить вторую нормальную форму, необходимо понимать, что такое функциональная зависимость. Функциональная зависимость — это связь между атрибутами. Один атрибут фу...
В таблице SALESJRACK составной
Рисунок 5.4. В таблице SALESJRACK составной ключ состоит из столбцов CustomerlD и Product На Рисунок 5.4 столбец CustomerlD однозначно строку не определяет. В двух строках его значения равны 100...
Третья нормальная форма
Третья нормальная форма Все-таки есть аномалии изменения, против которых таблицы во второй нормальной форме беззащитны. Эти аномалии связаны с транзитивными зависимостями. Помни: Транзитивная...
Доменноключевая нормальная форма (ДКНФ)
Доменно-ключевая нормальная форма (ДКНФ) После того как база данных оказалась в третьей нормальной форме, большинство шансов на возникновение аномалий изменения было сведено на нет. Впрочем, бол...
Ненормальная форма
Ненормальная форма Ненормальность иногда полезна. Возможно, вы увлеклись нормализацией, и вас занесло слишком далеко. Ведь базу данных можно разбить на такое количество таблиц, что вся она стане...








Начало