Форум: "Базы";
Текущий архив: 2002.02.21;
Скачать: [xml.tar.bz2];
ВнизУпаковка БД Найти похожие ветки
← →
Dinara (2002-01-25 11:49) [0]Когда стираешь записи методом Delete, размер базы остается прежним. Как упакватьбазу, чтобы новые записи "задвинули" старые?
← →
fnatali (2002-01-25 11:50) [1]dbiPackTable
← →
Dinara (2002-01-29 17:31) [2]Решение найдено.
procedure PackTable(Table: TTable);
var
Props: CURProps;
hDb: hDBIDb;
TableDesc: CRTblDesc;
begin
Table.Exclusive := True;
Table.Active := True;
if not Table.Active then
raise EDatabaseError.Create("Table must be opened to pack");
if not Table.Exclusive then
raise EDatabaseError.Create("Table must be opened exclusively to pack");
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));
end;
end;
← →
Anatoly Podgoretsky (2002-01-29 22:28) [3]fnatali © (25.01.02 11:50)
Ты посмотрел хелп по этой функции
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.02.21;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c