Форум: "Базы";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
ВнизКак дублировать все записи в таблице Найти похожие ветки
← →
alxn (2006-03-27 11:35) [0]Как дублировать все записи в таблице
так все виснет
INSERT INTO TBL (FLD) SELECT FLD FROM TBL
← →
Sergey13 © (2006-03-27 11:44) [1]Велика ли таблица и конечный смысл всего этого?
← →
Anatoly Podgoretsky © (2006-03-27 11:46) [2]Добавить поле счетчик.
← →
alxn (2006-03-27 12:26) [3]Точнее -- надо дублировать группу записей ~100-500 шт. Какая разница.
Поле (ID) счетчик есть.
Буферную таблицу делать?
← →
Johnmen © (2006-03-27 12:30) [4]А смысл?
← →
alxn (2006-03-27 13:19) [5]Смысл такой -- есть база рекламного журнала. Выходит каждую неделю. Рекламодатели дают одинаковую рекламу на несколько номеров, например 100 строк. Первый раз строки ввели руками, а в следующий номер хочется скопировать их из предыдущего, изменив номер журнала. Все предыдущие номера нужно хранить в исходном виде.
← →
sniknik © (2006-03-27 13:33) [6]это не совсем дублирование получается... как минимум столбец с номером журнала разный будет...
> INSERT INTO TBL (FLD) SELECT FLD FROM TBL
так должно работать (в аксес/mssql бы точно сработало), если конечно структура правильная, ключ есть, + поле FLD без уникального индекса... (по мемо ;о))
и если не учитывать, что таблица нуждается в срочной нормализации... (если одно и тоже поле, и не маленькое, встречается в таблице по сто раз ;)... ну это весомый повод разбить ее на 2 таблици, держать описание один раз в дополнительной, а плодить только ссылки на него)
← →
Johnmen © (2006-03-27 14:12) [7]Не буду разводить философию по поводу порочности таких методов. Как следствия, видимо, порочного конструирования БД...
Скажу следующее по поводу сабжа.
Дело в том, что в IB/FB весьма оригинально (в положительном смысле) организована логика модифицирующих запросов, когда исходным материалом для них являются данные селективных.
В данном случае происходит бесконечная рекурсия. Т.е. примерно так - для каждого атомарного ИНСЕРТ берутся данные из СЕЛЕКТ, а он, в свою очередь, перманентно обновляется, для каждого ИНСЕРТ.
Вот такие дела...:)
← →
Desdechado © (2006-03-27 18:07) [8]INSERT INTO TBL (FLD, nomer_jurnala) SELECT FLD, 4 FROM TBL where nomer_jurnala = 3
← →
alxn (2006-03-27 19:23) [9]Desdechado, спасибо так работает
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.014 c