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

Вниз

"Упаковка" таблицы   Найти похожие ветки 

 
Artem03   (2004-05-07 14:50) [0]

Подскажите команду для "упаковки" (ФИЗИЧЕСКОГО удаления помеченных как "удаленные" записей) таблицы. 5 лет тому назад я ей пользовался. Сейчас опять возникла необходимость.
Спасибо.


 
sniknik ©   (2004-05-07 14:58) [1]

PACK TABLE Table1 (если поддерживается тем что используеш)
DbiPackTable (если используеш то о чем не сказал)


 
Pul   (2004-05-07 16:59) [2]

procedure PackTable(Table: TTable);
var
 Props: CURProps;
 hDb: hDBIDb;
 TableDesc: CRTblDesc;
begin
 if not Table.Active then
 begin
   Application.MessageBox(PChar("Table Must Be Opened For Pack"),
     PChar("Error"), MB_ICONERROR);
   Exit;
 end;
 if not Table.Exclusive then
 begin
   Application.MessageBox(PChar("Table Must Be Opened Exclusive Mode"),
     PChar("Error"), MB_ICONERROR);
   Exit;
 end;
 Check(DbiGetCursorProps(Table.Handle, Props));
 if Props.szTableType = szPARADOX then
 begin
   FillChar(TableDesc, sizeof(TableDesc), 0);
   Check(DbiGetObjFromObj(hDBIObj(Table.Handle),
     objDATABASE, hDBIObj(hDb)));
   StrPCopy(TableDesc.szTblName, Table.TableName);
   StrPCopy(TableDesc.szTblType, Props.szTableType);
   TableDesc.bPack := True;
   Table.Close;
   Check(DbiDoRestructure(hDb, 1, @TableDesc, nil, nil, nil, False));
   Table.Open;
 end
 else
 if Props.szTableType = szDBASE then
 begin
{    Table.Close;}
   Check(DbiPackTable(Table.DBHandle, Table.Handle, nil, szDBASE, True));
{    Table.Open;}
 end
 else
 begin
   Application.MessageBox(PChar("Table Not Paradox Or DBase"),
     PChar("Error"), MB_ICONERROR);
   Exit;
 end;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.049 c
1-1084591138
IrBisoff
2004-05-15 07:18
2004.05.30
Выравнивание по ширине


14-1084526464
Карелин Артем
2004-05-14 13:21
2004.05.30
Где взять бесплатный невидимый счетчик на страницу?


6-1081330444
pohil
2004-04-07 13:34
2004.05.30
Чат на Indy


3-1083681061
Doctor Deejay
2004-05-04 18:31
2004.05.30
дублирование записей


1-1084886617
Empleado
2004-05-18 17:23
2004.05.30
try