powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Флаги а таблицах. имхо как то это ненормально...
9 сообщений из 9, страница 1 из 1
Флаги а таблицах. имхо как то это ненормально...
    #32531386
Фотография Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот есть таблица. Такой структуры:
ТИПЫ ПАРАМЕТРОВ
id типа параметра
Наименование типа
Флаг принадлежности типа типу А
Флаг принадлежности типа типу Б
(Постановка одного из флагов исключает возможность постановки другого. Флаги могут таже не стоять вовсе)

Нелучше ли делать 3-и таблицы:
ТИПЫ ПАМАМЕТРОВ (не принадлежащие типу A и Б)
ТИПЫ ПАРАМЕТРОВ (Типа A)
ТИПЫ ПАРАМЕТРОВ (Типа Б)
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32531396
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНелучше ли делать 3-и таблицы:

А если добавятся еще типы C и D, ты еще таблицы добавлять будешь?

Так специально и сделано - все в одной таблице, сколько ни добавляй.

-- Tygra's --
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32531398
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, появится еще один флаг и ты еще таблицу сделаешь:-) и до бесконечности... (да и БД придется изменять)

Так как флаг может быть только один одновременно, то заведи поле и пиши туда 0 - нет флагов, 1- флаг А, 2 - флаг Б
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32531409
Фотография Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасиба за советы
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32531421
olk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если уж полностью нормализовывать то лучше привести к следующему
виду

ТИПЫ ПАРАМЕТРОВ
id типа параметра
Наименование типа
FK на формат параметра (0..n)

ФОРМАТ ПАРАМЕТРА
id формата параметра
наименование формата (тип А, тип Б ...)


т.е. что нибудь типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
 /*==============================================================*/ 
 /* Table: PARAMETRFORMAT                                        */ 
 /*==============================================================*/ 
create table PARAMETRFORMAT  (
   FID                  INTEGER                         not null,
   FNM                  VARCHAR2( 10 )                    not null,
   constraint PK_PARAMETRFORMAT primary key (FID)
);

 /*==============================================================*/ 
 /* Index: "Relationship_1_FK"                                   */ 
 /*==============================================================*/ 
create index "Relationship_1_FK" on PARAMETRFORMAT (
   FID ASC
);

 /*==============================================================*/ 
 /* Table: PARAMETRTYPE                                          */ 
 /*==============================================================*/ 
create table PARAMETRTYPE  (
   ID                   INTEGER                         not null,
   FID                  INTEGER,
   NAME                 VARCHAR2( 50 ),
   constraint PK_PARAMETRTYPE primary key (ID)
);

alter table PARAMETRTYPE
   add constraint FK_PARAMETR_RELATIONS_PARAMETR foreign key (FID)
      references PARAMETRFORMAT (FID);
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32531597
AAron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насчет вынесения параметров в отдельную таблицу, это спорный момент. Во-первых, флаги - как правило это битовые поля, а следовательно кодируются целым числом. Во-вторых, в одной строке можно хранить информацию о нескольких флагах сущности (правда это нарушение нормализации, но смысл в этом есть), что значительно уменьшает размеры таблицы.

Таким образом, если количество флагов невелико (и это точно известно и иначе быть не может), то скорее всего нет смысла заводить отдельную таблицу.

Так что, надо думать, что будет лучше и проще в реализации.
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32532252
Фотография Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстате, а какой НФ неудовлетворяет 1-ый вариант?
http://www.sql.ru/forum/actualpost.aspx?bid=36&tid=95110&mid=0&p=1#697526
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32532298
Малиновский Владимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Юзайте связь "Много = Много". И фиг с ними, битовыми полями.
...
Рейтинг: 0 / 0
Флаги а таблицах. имхо как то это ненормально...
    #32533587
AAron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Лох
Прочитал еще раз вопрос. Походу я ошибся насчет нормализации :)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Флаги а таблицах. имхо как то это ненормально...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]