PDA

Показать полную графическую версию : Дробление табличек в базе данных


x404
22-10-2003, 00:11
У меня такой вопрос. Есть база данных  - ИЗДЕЛИЕ  - оно состоит из основных материалов,
покупных и вспомогательных (я их сделал отдельными табличками с соответствующими основными
кодами полей и основными параметрами).
Так вот как лучше сделать связку между этими таблицами (хотя у этих таблиц существуют свои подтаблички ,
но там все понятно) - одной таблицей (Код изделия - Код осн. материалов -
Код вспомогательных материалов - Код покупных материалов  -  В этом случае табличка
получается просто громадной) или тремя (Код изделия - Код осн. материалов),
(Код изделия - Код вспомогательных материалов),(Код изделия -Код покупных материалов) -
так вроде записей меньше, но табличек больше и тащить нужные записи уже по коду изделия.
Как лучше поступить?

Prisoner
22-10-2003, 04:20
В этом случае табличка
получается просто громадной

Громадные таблички... хм :).

Вариант трех, имхо - избыточен, то есть одна гораздо лучше, а есть возможность вообще без нее/них обойтись? Точнее так - лучше обойтись, есть ли возможность?

Sean Ingumsky
23-10-2003, 02:21
x404
Честно говоря, я не понял вопроса... :(
Если Вы хотите, чтобы в строке одной таблицы можно было прописать данные из строки другой, тогда я могу привести Вам пример:
BD - players
table1 - player (ID, Name (VARCHAR), Club(INT))
table2 - club (ID, Name(VARCHAR), NumberOfMembers(INT), President(VARCHAR))
ID оригинален (NOT_NULL, AUTO_INCREMENT) для каждой строки таблицы, он является идентификатором. Таким образом, в ячейке Club таблицы club вы можете записать ID нужного клуба из таблицы Club и потом делать выборку так, чтобы выводились необходимые данные из обеих таблиц (...WHERE player.Club=club.ID).
Объяснил я немного коряво, но... не знаю, как это сделать лучше.




© OSzone.net 2001-2012