Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.19;
Скачать: CL | DM;

Вниз

ADO: из ФОКСА в ДБАЗЕ   Найти похожие ветки 

 
Алексей   (2004-08-23 12:52) [0]

Имеется запрос из таблиц FOX`a вида (компонент qSour):
select a.pole1,a.pole2,b.pole3 from table1 a,table2 b
where a.pole1=b.pole

Также имеется таблица dBase вида (компонент tDest:
create table_dbase(
id_pole numeric(6,0),
opisanie character(20),
kol_vo numeric (6,0))

Сейчас просто перебираю строки запроса и запихиваю из в таблицу:

while not qSour.Eof do begin
  tDest.Insert;
  tDestid_pole.AsInteger=qSourpole1.AsInteger;
  ...
  tDest.Post;
  qSour.Next;
end;


Вопрос: а нельзя ли эту операцию сделать как нибудь одним махом, а не по одной записи?

P.S.
Вопросик в догонку:
В фоксе прекрасно работает запрос вида:
select .... from .... where .... into table temp_table
в дельфях приходится делать по одной записи, хотя и таблицы-источники и временная таблица - фоксовые.
Запрос insert .... values (select ....) также не проходит.


 
Некто   (2004-08-24 11:45) [1]

Нашел где-то:
INSERT INTO CardsArchives
  (Code, Move, Date)
   SELECT C_Code, C_Move, C_Date
   FROM Cards
   WHERE C_Date BETWEEN 1.1.98 AND 31.12.98

В таблицу CardArchives добавляется группа записей из таблицы Cards для записей сделанных в течение 1998 года.


 
Алексей   (2004-08-24 17:49) [2]

Спасибо. С запросом на вставку разобрался. Поздним ночером, после пары пива :-)
Вот бы сделать такое же, но CardsArchives создан в dBase
а Cards в FOX`e



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

Текущий архив: 2004.09.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
3-1092975265
Князев Сергей
2004-08-20 08:14
2004.09.19
BDE не встает и все тут


14-1093637597
Cobalt
2004-08-28 00:13
2004.09.19
Лицензии :)))


14-1093346330
0d08h
2004-08-24 15:18
2004.09.19
Java Socket


1-1093921769
Александр1
2004-08-31 07:09
2004.09.19
Реестр


14-1093365091
SergP
2004-08-24 20:31
2004.09.19
Автосхема