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

Вниз

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

 
Roka ©   (2003-04-01 23:06) [0]

Как осуществить такую штуку? Тоесть селектом отбираем данные из одной таблицы, а результат надо записать в другую. В Фоксе это выглядело как select * from table1 into table2.

Вроде как надо бы через Tquery делать, но что-то у меня into непроходит. :(


 
ЮЮ ©   (2003-04-02 03:03) [1]

Insert into table2 select * from table1 [where table1. ...]

Insert into table2(a,b,c) select d,e,f from table1 [where table1. ...]


 
Roka ©   (2003-04-02 13:05) [2]

а у меня через TQuery что-то так некатит :(
На что ругается позже напишу.


 
Roka ©   (2003-04-02 22:51) [3]

Пробую делать так:
Query1.SQL.Add("Insert into foxbaza.dbf select * from baza.db ");
Вываливается ошибка при выполнении Query:
Project zzzzz.exe raised exception class EDBEngineError with message
"Type mismatch in expression".
Что я делаю не так?
И как быть если базы находятся не в текущем каталоге?


 
Basic ©   (2003-04-03 00:52) [4]

что-то на несоответствие типов ругается,
кстати у тебя baza - db или dbf, вроде про парадокс не указывал


 
777 ©   (2003-04-03 01:58) [5]

insert into "c:\base\foxbasa.dbf "
select * from "c:\paradoxbase\baza.db "


 
ЮЮ ©   (2003-04-03 03:04) [6]

insert into ":dbfalias:foxbasa.dbf"
select * from ":paradoxalias:baza.db"


 
Карелин Артем ©   (2003-04-03 08:05) [7]

Вот копирование таблицы из одного формата в другой. Для твоих целей надо просто чуть обрезать код.
procedure TForm1.Button1Click(Sender: TObject);
var i:Integer;
begin
Table1.Active:=false;
//Набор данных должен быть закрыт
if Table1.Exists then Table1.DeleteTable;
Table1.FieldDefs.Assign(Dbf1.FieldDefs);
//Если надо копировать индексы, делаем то же самое с IndexDefs.
//Перед созданием таблицы имя и база данных должны быть назначены.
Table1.CreateTable;
Table1.Open;
//Копируем данные
ProgressBar1.Max:=Dbf1.ExactRecordCount;
Dbf1.First;
while not(Dbf1.Eof) do
begin
Table1.Append;
for i:=0 to Dbf1.Fields.Count-1 do
begin
Table1.Fields[i].Value:=Dbf1.Fields[i].Value;
end;
ProgressBar1.Position:=Dbf1.PhysicalRecNo;
Application.ProcessMessages;
Table1.Post;
Dbf1.Next;
end;
Table1.Close;
ProgressBar1.Position:=0;
end;


 
Roka ©   (2003-04-03 22:34) [8]

Хочется конечно из Парадокса в Фокс отселектить, но и из Парадокса в Парадокс невыходит и из Фокса в Фокс, попробую все ваши советы. СПС!


 
ЮЮ ©   (2003-04-04 02:32) [9]

>но и из Парадокса в Парадокс невыходит
странно. а автоинкрементных полей в принимающей таблице нет. Если есть, то их стоит исключить из запроса



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
14-67486
Alarm
2003-04-03 13:04
2003.04.21
Delphi 4


14-67500
Wild Wizard
2003-04-03 16:00
2003.04.21
Кстати есть интересная идея....


14-67462
Valeriy
2003-04-05 21:47
2003.04.21
где найти прогу, которая ищет и вставляет данные???


1-67319
Lexer
2003-04-09 11:29
2003.04.21
Нужен компонент DBGrid + DBTreeView


4-67631
ers
2003-02-19 17:31
2003.04.21
Как закрыть программу зная её Handle?