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

Как перенести данные из одной таблицы в другую   Найти похожие ветки 

 
Crazy monkey   (2006-07-06 13:06) [0]

Есть 2 абсолютно одинаковые таблицы и в этих таблицах 10 полей. Одна из таблиц используется как буфер для переноса данных в основную. Понимаю, что это достаточно кривой подход, но он меня устраивает и менять ничего не хочу.

Вопрос в том, как перенести данные из одной таблицы в другую. Сейчас использую такой код:

adotable1.FieldByName("Поле1").AsInteger:=adotable2.FieldByName("Поле1").AsInteg er;
adotable1.FieldByName("Поле2").AsInteger:=adotable2.FieldByName("Поле2").AsInteg er;
и.т.д.

Способо колхозный, но признаться и я сам колхозник в Делфи. Только начинаю первые шаги. Подскажите пож-та как перенести данные из одной таблицы в другую по умному.

Очень нужен исходник.

Заранее спасибо.


 
Desdechado ©   (2006-07-06 13:10) [1]

Если укажешь СУБД, можешь получить и более быстрые способы.


 
StriderMan ©   (2006-07-06 13:17) [2]

можно сделать хранимую процедуру с циклом, в котором

INSERT INTO TABLE1 (...поля...) VALUES (SELECT * FROM TABLE2 WHERE ....) WHERE ...


 
Desdechado ©   (2006-07-06 13:20) [3]

StriderMan ©   (06.07.06 13:17) [2]
ты хоть понял, чего написал? сам-то пробовал?


 
StriderMan ©   (2006-07-06 13:25) [4]


> сам-то пробовал?

нет. наугад.

ндя, пардон, не будет такое работать.

но однозначно это в хранимой процедуре делать надо, через переменные.


 
Crazy monkey   (2006-07-06 13:29) [5]

Я работаю с Аксесовскими таблицами через ADO компоненты.


 
ЮЮ ©   (2006-07-07 04:42) [6]


> Я работаю с Аксесовскими таблицами через ADO компоненты.

через adotable. А поэтому выбранный тобой метод - самый лучший. Зачем к колхозным технологиям прикручитвать космические технологии? Чем тебя то не устраивает?

Умного решения кривого подхода в природе не существует.


 
Desdechado ©   (2006-07-07 10:35) [7]

Crazy monkey   (06.07.06 13:29) [5]
Не уверен, что акцесс такое поддерживает, но должен.
AdoCommand.CommandText:="INSERT INTO tabl1 SELECT * FROM tabl2";
Здесь не учтены варианты с разной структурой таблиц и ограничения по условиям. Но, как я понял, тебе это не надо.


 
DimonS ©   (2006-07-17 08:33) [8]

Вопрос в догонку.
Нужно скопировать некоторое количество записей, данных, отобранных select-ом из одной таблицы Access в другую.

НО!
Таблицы находятся в разных mdb-файлах, лежат в сетевых папках. Можно ли такое сделать каким-либо запросом? Или Access такое не поддерживает?


 
Virgo_Style ©   (2006-07-17 13:20) [9]

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



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

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



Память: 0.47 MB
Время: 0.025 c
2-1153126424
Spools
2006-07-17 12:53
2006.08.06
Один вопрос по Combobox


3-1148922065
alpha5
2006-05-29 21:01
2006.08.06
Странная ошибка


2-1153426046
Ivolg
2006-07-21 00:07
2006.08.06
Курсор


2-1153286494
MSVN
2006-07-19 09:21
2006.08.06
HTML -> EXE ?


15-1152709956
syte_ser78
2006-07-12 17:12
2006.08.06
Дело №




   Наверх