E
E_Korobko
Здраствуйте!
Помогите, пожалуйста, наладить динамический запрос.
Мне необходимо в программке создавать табличку с определенными полями, а потом из другого файла выбранные файлы перенести в эту табличку(kiosk.db).
Привожу фрагментики программы:
{создаем файл}
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('create table kiosk');
Query1.SQL.Add('(Kiosk char(15),Summa money,primary key(kiosk))');
Query1.ExecSQL;
...
{выборка из другой таблички}
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('select P.Kiosk,sum(P.summa)');
Query1.SQL.Add('from "pdoxvtor.db" as P');
Query1.SQL.Add('group by P.kiosk');
Query1.Open;
{заносим в файл отобранные поля таблички}
s1 := 'C:\Program Files\Borland\Delphi6\Projects\Kiosk\kiosk.db';
AssignFile(p, s1);
while not Query1.Eof do
begin
if (FileExists(s1)=true) then Append(p)
else Rewrite(p);
write(p,Query1.FieldByName('Kiosk').AsString);
write(p,' ');
writeln(p,Query1.FieldByName('SUM OF Summa').AsString);
Query1.next;
end;
System.CloseFile(p);
ошибок нет, но файл создается с одним символов и содержит только заголовки таблицы.
Без блока с create table все создается, но в DataBase Desktopе не открывается: пишет, что не подходящий формат, хотя расширение *.db, нет заголовков таблицы.
Помогите, пожалуйста, наладить динамический запрос.
Мне необходимо в программке создавать табличку с определенными полями, а потом из другого файла выбранные файлы перенести в эту табличку(kiosk.db).
Привожу фрагментики программы:
{создаем файл}
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('create table kiosk');
Query1.SQL.Add('(Kiosk char(15),Summa money,primary key(kiosk))');
Query1.ExecSQL;
...
{выборка из другой таблички}
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('select P.Kiosk,sum(P.summa)');
Query1.SQL.Add('from "pdoxvtor.db" as P');
Query1.SQL.Add('group by P.kiosk');
Query1.Open;
{заносим в файл отобранные поля таблички}
s1 := 'C:\Program Files\Borland\Delphi6\Projects\Kiosk\kiosk.db';
AssignFile(p, s1);
while not Query1.Eof do
begin
if (FileExists(s1)=true) then Append(p)
else Rewrite(p);
write(p,Query1.FieldByName('Kiosk').AsString);
write(p,' ');
writeln(p,Query1.FieldByName('SUM OF Summa').AsString);
Query1.next;
end;
System.CloseFile(p);
ошибок нет, но файл создается с одним символов и содержит только заголовки таблицы.
Без блока с create table все создается, но в DataBase Desktopе не открывается: пишет, что не подходящий формат, хотя расширение *.db, нет заголовков таблицы.