powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Задача: скопировать значение поля в подчинённую таблицу?
7 сообщений из 7, страница 1 из 1
Задача: скопировать значение поля в подчинённую таблицу?
    #32547050
Tonny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый год.
постановка задачи:
есть таблица MAIN(id,FF,....)
подчинённая: RES(id,main_id,FF,...)
надо: RES.FF=MAIN.FF для всех RES.MAIN_ID=MAIN.ID
как это сделать достаточно быстро?
(MAIN>100 тыс записей, RES - ещё больше)

спасибо за внимание
...
Рейтинг: 0 / 0
Задача: скопировать значение поля в подчинённую таблицу?
    #32547114
Лентяй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Через SP видимо. Что-то типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
declare var db_key char( 8 );
declare var ff ...;

for select r.rdb$db_key, m.ff
    from res r
    inner join main m on m.id = r.main_id
    into :db_key, :ff 
do
    update res set ff=:ff where rdb$db_key = :db_key;
Удачи.
...
Рейтинг: 0 / 0
Задача: скопировать значение поля в подчинённую таблицу?
    #32547151
Tonny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насколько я понял, RDB$db_key - это первичный ключ?
т.е. если у меня поле ID - первичный ключ, то я могу его использовать?

спасибо :) попробую
ато через
update RES r set FF=(
select m.FF from MAIN m
where m.id=r.main_ID)

ну ооочень долго
...
Рейтинг: 0 / 0
Задача: скопировать значение поля в подчинённую таблицу?
    #32547173
Лентяй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
насколько я понял, RDB$db_key - это первичный ключ?
т.е. если у меня поле ID - первичный ключ, то я могу его использовать?

Это типа круче первичного ключа :) Скажем так - адрес записи в БД (страница + смещение). Присутствует у каждой записи в любой таблице.

Удачи.
...
Рейтинг: 0 / 0
Задача: скопировать значение поля в подчинённую таблицу?
    #32547201
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UPDATE RES A SET FF=(SELECT B.FF FROM MAIN B WHERE A.MAIN_ID=B.ID)
...
Рейтинг: 0 / 0
Задача: скопировать значение поля в подчинённую таблицу?
    #32547249
Tonny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Уже отработало так, как и Johnmen
посоветовал, но это ооочень долго. При следующем разе попробую через ХП.
...
Рейтинг: 0 / 0
Задача: скопировать значение поля в подчинённую таблицу?
    #32548080
Tonny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проверил через SP, как советовал Лентяй - выполнилось моментально.
Через вложенные SELECT выполнялось более часа, я не дождался и снял.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Задача: скопировать значение поля в подчинённую таблицу?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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