|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Копирование/добавление данных из одной таблицы в другую
Здравствуйте. Имеется три одинаковых, но с разными значениями, таблицы. Мне нужно как то скопировать все эти данные в одну таблицу. Скажем сначала копирую данные из первой, затем я сделаю пустую строку и дальше пойдут данные из второй таблицы, опять пустая строка и дальше из третьей. Для всех трех таблиц будут компоненты Table, и для одной пустой тоже будет Тэйбл. После копирования я выведу последнюю таблицу в DBGrid. Как все это можно сделать?
SQL не предлагать. |
#2
|
||||
|
||||
ну так и бери 2 компонента Table. Table1 у тебя будет держать новую таблицу, а Table2 будет поочередным источником 3-х твоих таблиц по которым ты будешь бегать в цыкле и писать записи в Table1
примерно так: Код:
Table1.Close; Table1.TableName:='New_table.db'; Table1.Open; for i:=0 to 2 do begin Table2.Close; Table2.TableName:='Memo1.Lines[i]'; Table2.Open; while not Table2.EOF do begin Table1.Insert; Table1.Fields[0].Value:=Table2.Fields[0].Value; Table1.Fields[1].Value:=Table2.Fields[1].Value; Table1.Fields[2].Value:=Table2.Fields[2].Value; Table1.Post; Table2.Next; end; Table1.Insert Table2.Post; end; Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Последний раз редактировалось Yurk@, 21.02.2011 в 18:15. |
#3
|
|||
|
|||
а для чего Memo в коде?
Стоп. Понял - в мемо содержатся названия трех баз. Последний раз редактировалось X-Must, 21.02.2011 в 18:51. |
#4
|
|||
|
|||
Цитата:
Вообще, такое лучше делать запросом. Если структура таблиц одинаковая, то запрос будет такого вида: Код:
INSERT INTO Table VALUES (SELECT * FROM OtherTable); |
#5
|
|||
|
|||
Цитата:
Чтобы сделать запросом придется иметь дело с гемором вроде дополнитльных компонентов на форме - IBquery, IBUpdateSql, IBTransaction, регистрировать базу в IBConsole, указывать логин, пароль. А мне надо всего лишь программу, которая формирует таблицу из данных других таблиц на диске. |