Форум: "Базы";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];
Вниз"Упаковка" таблицы Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.031 c