Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

FOREIGN KEY Обеспечение целоостности [D5, IB6.x]


Страницы:   1 2 3

Борис ©   (2002-12-17 11:15:00) 

Уважаемые господа!
Есть N таблиц.

Одна главная:

CREATE TABLE "T_SKLAD"
(
"PKEY" INTEGER NOT NULL,
"NOMINAL" VARCHAR(250) CHARACTER SET WIN1251,
"TYPE_ELEM" VARCHAR(250) CHARACTER SET WIN1251,
"TYPE_ELEM_SVAZ" INTEGER,
"PRICE" INTEGER,
"POSTAVCHIK" INTEGER,
"PRIMECHANIE" VARCHAR(250) CHARACTER SET WIN1251,
"SROK_POSTAVKI" VARCHAR(250) CHARACTER SET WIN1251,
"OSTATOK" FLOAT,
"DEFICIT_NORM" INTEGER,
"ZAKAZAT" INTEGER,
"ZAKAZANO" INTEGER,
"OPLATIT" INTEGER,
"OPLACHENO" INTEGER,
"P1" INTEGER,
"P2" INTEGER,
"P3" INTEGER,
"P4" INTEGER,
"P5" INTEGER,
PRIMARY KEY ("PKEY")
);


И есть подчиненные таблицы (их много, но они одинаковые)
CREATE TABLE "T_NORM_1"
(
"PKEY" INTEGER NOT NULL,
"SECOND_KEY" INTEGER,
"NORMA" FLOAT,
"NORMA_NA_N" FLOAT,
"P1" FLOAT,
"P2" FLOAT,
"P3" FLOAT,
"P4" FLOAT,
"P5" FLOAT,
PRIMARY KEY ("PKEY")
);
ALTER TABLE "T_NORM_1" ADD FOREIGN KEY ("SECOND_KEY") REFERENCES T_SKLAD ("PKEY");


Задача - Обеспечетиь, чтобы для каждой строки в таблице T_SKLAD была своя строка в таблицах T_NORM_N (1..N) завязанная Первичный ключ T_SKLAD - Вторичный ключ SECOND_KEY T_NORM_N.


Reindeer Moss Eater   (2002-12-17 11:30:00) [41]

Да, именно этого и хотелось бы. Только вот как?

Триггер на вставку


Борис   (2002-12-17 11:27:00) [42]

Romkin
А как её привести к 3-й нормальной форме, чтобы небыло зависимостей между атрибутами (но не ключами)?

XM-AD
Да, именно этого и хотелось бы. Только вот как?


XM-AD   (2002-12-17 11:23:00) [43]

Не въехал...... Ты хочешь, чтобы при добавлении записи в t_sklad добавлялись записи во все таблицы t_norm_N???


Reindeer Moss Eater   (2002-12-17 11:23:00) [44]

Все как раз наеоборт.
Для каждой записи в T_NORM_1 должна быть строка в T_SKLAD


Romkin   (2002-12-17 11:21:00) [45]

Угу... приведи базу к третьей нормальной форме, и все пройдет...


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо