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

клонирование записей из 3х связанных таблиц   Найти похожие ветки 

← →
Prohodil Mimo ©   (2005-07-21 19:02) [0]

Есть 3 таблицы (Главная, под ней другая, а под второй ещё одна)

необходимо сделать копию записи первой таблицы, со всеми хвостами из второй, а для второй все хвосты из третьей.
Возможно ли это сделать SQL запросом или надо писать ХР?

FB 1.5.2


← →
P.N.P. ©   (2005-07-21 19:44) [1]

Что значит "копию записи"?
Выбрать-то не проблема. INNER JOIN обычный.
А вот insert/update одним запросом - никак.


← →
Prohodil Mimo ©   (2005-07-21 19:59) [2]

P.N.P. ©   (21.07.05 19:44) [1]
Что значит "копию записи"?


ну представим таблицы в виде каталогов с файлами.
Есть каталог, в нем другой, а в том ещё один.
Вот и надо сделать копию каталога с подкаталогами, только в БД с таблицами.


← →
Fay ©   (2005-07-21 20:20) [3]

2 Prohodil Mimo ©   (21.07.05 19:59) [2]
Два запроса вида insert .. select и один цикл такиз запросов.
Тебе их написать, что-ли?


← →
Fay ©   (2005-07-21 20:56) [4]

2 Fay ©   (21.07.05 20:20) [3]
Цикл, кстати, не нужен 8)


← →
evvcom ©   (2005-07-22 09:27) [5]


> ну представим таблицы в виде каталогов с файлами.
> Вот и надо сделать копию каталога с подкаталогами, только
> в БД с таблицами

Так представим или это и есть реальная задача? Куда сделать копию? Откуда? Что вообще имеется? Или и таблицы надо создавать? В чем проблема? Ничего не понятно.


← →
Prohodil Mimo ©   (2005-07-22 15:53) [6]

Fay ©   (21.07.05 20:20) [3]
Два запроса вида insert .. select и один цикл такиз запросов.
Тебе их написать, что-ли?


Хотел обойтись без цикла, одним запросом.

Обошёлся. Правда для этого ввёл ещё одно поле в котором указано с кого делалась копия, и триггер.


← →
Prohodil Mimo ©   (2005-07-22 16:11) [7]

Для тех кто не понял что я хотел :

Таблица1

ID1 : NAME
1   : aaa
2   : bbb

Таблица2

ID2 : ID1 : NAME
1   :  1  :  aa
2   :  2  :  bb
3   :  2  :  cc
4   :  2  :  dd

Таблица3

ID3 : ID2 : NAME
1   :  2  :  a
2   :  2  :  b
3   :  3  :  c
4   :  2  :  d

После копирования записи (2) из таблицы 1 должно получиться так:

Таблица1

ID1 : NAME
1   : aaa
2   : bbb
3   : копия bbb

Таблица2

ID2 : ID1 : NAME
1   :  1  :  aa
2   :  2  :  bb
3   :  2  :  cc
4   :  2  :  dd
5   :  3  :  bb
6   :  3  :  cc
7   :  3  :  dd

Таблица3

ID3 : ID2 : NAME
1   :  2  :  a
2   :  2  :  b
3   :  3  :  c
4   :  2  :  d
5   :  5  :  a
6   :  5  :  b
7   :  6  :  c
8   :  5  :  d

ЗЫ. можете предложить свои варианты.


← →
evvcom ©   (2005-07-22 17:20) [8]

Не знаю как FB, думаю, вряд ли птица сможет вставить одним запросом данные в 3 таблицы. Такое по плечу, наверное, только Ораклу. Кроме того, я так и не понял по какому алгоритму должны вставляться записи в т2 и т3.



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

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



Память: 0.47 MB
Время: -0.948 c
9-1115718676
nikitoz
2005-05-10 13:51
2005.09.04
Автору dceDemo.


1-1123832169
Ка
2005-08-12 11:36
2005.09.04
Как отловить одновременно два события


6-1112689679
Priest
2005-04-05 12:27
2005.09.04
Как сделать ping из Дельфи и получить результаты


14-1123802724
Kerk
2005-08-12 03:25
2005.09.04
American Beauty


2-1065376913
Оля85
2003-10-05 22:01
2005.09.04
Как вычислить значение функции




   Наверх