Вниз
Скачать: CL | DM;

Проектирование БД   Найти похожие ветки 

 
Bayer_Linse   (2003-06-17 23:43) [0]

Курсовой проект. В бд надо создать таблицу грузовых и пассажирских самолетов. Получилось следующее:

CREATE TABLE [Airplain]
(
AirplainID int IDENTITY(1,1) NOT NULL PRIMARY KEY,
AirplainName char(50) UNIQUE NOT NULL,
Passengers int NOT NULL,
Fuel int NOT NULL,
Range int NOT NULL,
Freight int NOT NULL,
isFreighter bit NOT NULL DEFAULT 0
)
GO

ALTER TABLE [Airplain]
ADD CONSTRAINT Check_Airplain CHECK ((Passengers>0 and Fuel>0 and Freight>0) or (Passengers=0 and isFreighter=1))
GO

Стоит ли из этой таблицы сделать две, отдельно пассажирские самолеты, отдельно грузовые. Или три: общая информация о самолете и по типу самолета пассажирские самолеты и грузовые самолеты. Соответственно пропадет условие Passengers=0 and isFreighter=1.

Какой вариант предпочтительнее?


 
_Narayan_   (2003-06-18 00:09) [1]

а если типов самолётов станет больше.
значит так..

Создаём таблицу из трех полей:
1) Идентификатор_типа
2) Название_типа
3) Примечание_типа

Создаём таблицу из семи полей:
1) Идентификатор_самолёта
2) Идентификатор_типа (зависимое поле)
3) Название_самолета
4) Горючее
5) Дальность
6) Пассажировместимость
7) Грузоподъемность

..и всё на этом.
что называется - все отношения в третьей нормальной форме ;-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.016 c
4-31561
Forest
2003-05-10 15:26
2003.07.10
Как передать инфу в Edit внешнего приложения, зная его Name?


7-31529
GIMLI
2003-04-20 13:53
2003.07.10
имя Материнской платы


14-31418
MalkoLinge
2003-06-25 12:36
2003.07.10
Я БАКАЛАВР !


7-31532
Leos
2003-04-25 21:35
2003.07.10
ShellListView


14-31517
VolanD
2003-06-25 15:05
2003.07.10
Epox 8KTA3L+ and GForce4 MX440 TV-out




   Наверх