Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Создание локальной БД [D6, Paradox]


mas_alexey ©   (2002-08-20 18:58:00) 

Создаю в базе таблицу

procedure TForm1.CreateMyTable(NameFile: string);
begin
with Form1.Table1 do begin
Active := False;
DatabaseName := "";
TableName := NameFile;
TableType := ttDefault;
with FieldDefs do begin
Clear;
Add("No", ftInteger, 0, False);
Add("Tovar", ftString, 20, False);
Add("Status", ftString,1, False);
Add("Cost", ftfloat,0, False);
Add("DateCost", ftDateTime, 0, False);
Add("My_Balans", ftFloat,0, False);
end;
with IndexDefs do begin
Clear;
Add("", "No", [ixPrimary, ixUnique]);
Add("ByName", "Tovar;Status", [ixCaseInsensitive]);
end;
CreateTable;
Free;
end;
end;



procedure TForm1.FormShow(Sender: TObject);
var
table_dir:string;
begin
getdir(0,table_dir);
table_dir:=table_dir+"\db";
MKDIR(table_dir);
table_dir:=table_dir+"\table.db";
if FileExists(table_dir)=false then CreateMyTable(table_dir);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
Table1.Active:=true;
end;

При первом проходе когда создаётся таблица, а потом Table1.Active:=true;
Ошибка access violation...
Если таблица уже создана всё нормально дальше идёт.
Как правильно освободить таблицу после создания?


Ученик   (2002-08-20 19:41:00) [1]

TBatchMove, если TBatchMove.BatchMode=batCopy, то и создавать локальную таблицу не надо


mas_alexey   (2002-08-20 19:37:00) [2]

Спасибо огромное заработало.

Ещё такой вопросик.
Делаю SQL-запрос к базе информикс получаю результат в DBGRID. Как весь результат запроса записать в локальную БД? (Типа той которая создаётся выше).
Как это делается?


Ученик   (2002-08-20 19:21:00) [3]

>mas_alexey (20.08.02 19:15)
Надо убрать, убиваешь Form1.Table1, а потом к ней обращаешься :)


mas_alexey   (2002-08-20 19:15:00) [4]

Так вроде всё так и есть ...


Ученик   (2002-08-20 19:01:00) [5]

...
CreateTable;
Free;
end;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо