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

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

Копирование данных в Access [D5, Access]


SiJack ©   (2003-04-16 09:44:00) 

Добрый всем день. Может кто знает эффективное решение следующей проблемы: Имеются две одинаковых базы
поля след
главная-(1-ключевое(счетчик), 2- поле..., 3-поле,...)
подчиненные-(1-ключевое(счетчик), 2-поле связи с гл, 3-поле ...)
1) 1 (1-многим) 2 (1-многим) 3
2) 11 (1-многим) 22 (1-многим) 33
Требуется скопировать даные из одной базы в другую без потери связи и без сохранения значения счетчика главной таблицы,
В лоб получается но может есть более удобный способ?
Всем заранее спасибо


SiJack   (2003-04-16 11:35:00) [1]

Спасибо за совет будем пробовать


Соловьев   (2003-04-16 11:27:00) [2]


> insert into "X" select * from "XX"

а тут местами поменять таблицы :)))


Соловьев   (2003-04-16 11:26:00) [3]


> set t2.[поле связи] = t1.[счетчик_клон]

сорри

set t2.[поле связи] = t1.[ счетчик]


Соловьев   (2003-04-16 11:24:00) [4]

Заносим в три таблицы данные, запросами :
insert into "X" select * from "XX"
где х - [ 1, 2, 3]
xx - [11,22,33]

потом апдейтим поле связи:
update "22" t2, "11" t1, "1" t3
set t2.[поле связи] = t1.[счетчик_клон]
where t3.[счетчик]= t1.[счетчик_клон]

для таблицы "33" - аналогично с изменениями.


SiJack   (2003-04-16 11:18:00) [5]

Это то понятно:) ну а если в новой таблице уже есть такое ключевое поле ?

Ну да ладно гори оно все синим пламенем, попробую поменять структуру БД может придумаю чегонибудь получше


Соловьев   (2003-04-16 11:16:00) [6]

ну и что, это нужно для конвертации старых связей на новые. К тому полю оно имеет транзитивное отношение.


SiJack   (2003-04-16 11:15:00) [7]

Это то понятно:) ну а если в новой таблице уже есть такое ключевое поле ?


Соловьев   (2003-04-16 11:12:00) [8]

копия :)))


SiJack   (2003-04-16 11:09:00) [9]

Это как клон?


Соловьев   (2003-04-16 11:06:00) [10]

можно создать клон этого ключевого поля в новой таблице и потом запросами забалабусить...


SiJack   (2003-04-16 11:02:00) [11]

Понятно :(


Соловьев   (2003-04-16 10:33:00) [12]


> главная-( 1-ключевое(счетчик),


Соловьев   (2003-04-16 10:25:00) [13]

I>
> без сохранения значения счетчика главной таблицы,

наверное не получится...


SiJack   (2003-04-16 10:13:00) [14]

>Соловьев ©
Именно это я и делаю, вот и хотел узнать как это сделать быстрее и проще (если это возможно конечно)


Соловьев   (2003-04-16 10:02:00) [15]

Т.е я так понял ты связку 1-2-3 переносишь в 11-22-33?
может запросами можно...


SiJack   (2003-04-16 09:56:00) [16]

1) Беру запись в 1-главной и добовляю ее в 11-гланую(перхожу к новой записи)

2) добовляю запись из 2-подчиненой во 22-подчиненую (перхожу к новой записи)

3)добовляю все записи из 3-подчиненой в 33-подчиненую


и так пока усе не скопирую


Соловьев   (2003-04-16 09:47:00) [17]


> В лоб получается но может есть более удобный способ?

а как ты делаешь? сегодня еще не практиковался в телепатии :)))


Наверх

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