Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.10;
Скачать: CL | DM;

Вниз

Помогите определить связи   Найти похожие ветки 

 
freak   (2006-07-06 18:00) [0]

Доброго времени суток.

Задача: Имеется таблица сущностей. Некоторые сущности могут при определенных условиях "заменять" другие (не в самой таблице, а как бы... хм... в реальной жизни). Причем есть такие, которые заменяются не одной, а сразу несколькими. Например, при продаже... есть номенклатура книга (1шт.), включающаяя в себя несколько томов, которая в случае отсутствия на складе может быть заменена несколькими книгами по одному тому. Как определить подобную связь в БД?

Заранее благодарен.


 
Ega23 ©   (2006-07-06 18:04) [1]

Сделать ещё одну таблицу со связью "многие-ко-многим" на данную таблицу.


 
freak   (2006-07-06 18:08) [2]

Под конец дня че-т туго соображается, можно проиллюстрировать? Если не затруднит конечно =/


 
Ega23 ©   (2006-07-06 18:14) [3]



alter table GoodSubstitutes
  drop constraint FK_GOODSUBS_REF_GOODS
go

alter table GoodSubstitutes
  drop constraint FK_GOODSUBS_REF2_GOODS
go

if exists (select 1
           from  sysobjects
          where  id = object_id("GoodSubstitutes")
           and   type = "U")
  drop table GoodSubstitutes
go

if exists (select 1
           from  sysobjects
          where  id = object_id("Goods")
           and   type = "U")
  drop table Goods
go

/*==============================================================*/
/* Table: GoodSubstitutes                                       */
/*==============================================================*/
create table GoodSubstitutes (
  UNID                 Int Identity(0,1)              not null,
  GoodID               int                            null,
  SubstGoodID          int                            null
)
go

/*==============================================================*/
/* Table: Goods                                                 */
/*==============================================================*/
create table Goods (
  GoodID               int                            not null,
  GoodName             varchar(255)                   not null,
  constraint PK_GOODS primary key  (GoodID)
)
go

alter table GoodSubstitutes
  add constraint FK_GOODSUBS_REF_GOODS foreign key (GoodID)
     references Goods (GoodID)
go

alter table GoodSubstitutes
  add constraint FK_GOODSUBS_REF2_GOODS foreign key (SubstGoodID)
     references Goods (GoodID)
go

Print "===  Cоздание  объектов  БД завершено"
go


 
Ega23 ©   (2006-07-06 18:16) [4]

В таком вот акцепте. На большее уж извини - сейчас времени вообще нет...

В принципе, это скрипт на создание структур таблиц.
Думаю разберёшься.


 
Desdechado ©   (2006-07-07 10:31) [5]

Пришел купить энциклопедию в 10 томах, а мне дали 5 томов Есенина и 5 сборников кроссвордов?
что-то мне это напоминает...



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

Текущий архив: 2006.09.10;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
15-1155186777
Bless
2006-08-10 09:12
2006.09.10
Даешь Бали! (практически не оффтоп)


1-1153968571
-=Germe$=-
2006-07-27 06:49
2006.09.10
Перерисовка контрола


5-1138780491
matveev
2006-02-01 10:54
2006.09.10
TPageControl добавление TTabSheet в design-time


2-1156189876
shart
2006-08-21 23:51
2006.09.10
WORD > 2xBYTE


3-1151652678
salexn
2006-06-30 11:31
2006.09.10
Отловить из-за чего не законектилось