Форум: "Базы";
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];
ВнизОбъясните такую штуку, пожалуйста Найти похожие ветки
← →
sniknik (2002-03-24 23:08) [1]Упаковать.
procedure TForm1.PackTable(Table: TTable);
var
Props: CURProps;
hDb: hDBIDb;
TableDesc: CRTblDesc;
begin
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 else
if (Props.szTableType = szDBASE) then Check(DbiPackTable(Table.DBHandle, Table.Handle, nil, szDBASE, True))
else raise EDatabaseError.Create("Table must be either of Paradox or dBASE type to pack");
Table.Open;
end;
При удалении ставится пометка "удален" физически не удаляется.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c