Изучаем sql



Pdf көрінісі
бет32/261
Дата28.07.2022
өлшемі1,6 Mb.
#147825
1   ...   28   29   30   31   32   33   34   35   ...   261
Байланысты:
Изучаем SQL ( PDFDrive )

Шаг 2: уточнение
В главе 1 была представлена концепция 
нормализации
, что является
процессом обеспечения отсутствия в БД дублирующихся (кроме внеш
них ключей) или составных столбцов. При повторном анализе столб
цов таблицы возникают следующие соображения:

Столбец 
name
на самом деле является составным объектом, вклю
чающим имя и фамилию.

Поскольку несколько человек могут иметь одинаковые имя, пол,
дату рождения и т. д., в таблице 
person
нет столбцов, гарантирую
щих уникальность.

Столбец 
address
– тоже составной объект, включающий улицу, го
род, штат/область, страну и почтовый индекс.

Столбец 
favorite_foods
– это список, содержащий 0, 1 или более не
зависимых элементов. Было бы лучше вынести эти данные в отдель
ную таблицу, включающую внешний ключ к таблице 
person
, чтобы
обозначить человека, к которому приписано конкретное блюдо.
В табл. 2.7 можно увидеть нормализованный вариант таблицы 
person
после учета всех этих замечаний.
Теперь, когда у таблицы 
person
есть первичный ключ (
person_id
), га
рантирующий уникальность, следующим шагом будет построение таб
лицы 
favorite_food
, включающей внешний ключ к таблице 
person
. Ре
зультат показан в табл. 2.8.
Столбцы 
person_id
и 
food
(блюдо) образуют первичный ключ таблицы
favorite_food
. Столбец 
person_id
также является внешним ключом
к таблице 
person
.
Столбец
Тип
Допустимые значения
Name
Varchar(40)
Gender
Char(1)
M
,
F
Birth_date
Date
Address
Varchar(100)
Favorite_foods
Varchar(200)


38

Достарыңызбен бөлісу:
1   ...   28   29   30   31   32   33   34   35   ...   261




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет