Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Вниз

Pack 


roman001   (2002-02-28 18:58) [0]

Подскажите пожалуйста как програмно паковать парадоксовые таблицы, а то они пухнит на глазах



kirill2000   (2002-02-28 20:25) [1]

Необходимо скачать библиотеку по адресу http://alvg.far.ru/files/rxd6.exe установить ее, а затем включить модуль BDEUtils.pas в свой проект (в Uses). Тогда будет доступен метод PackTable(TTable)



SDS   (2002-02-28 23:09) [2]

Вот код, одна процедура пакует одну таблицу, вторая все таблицу по имени алияса
Одна таблица

procedure PackParadoxTable(const ADatabaseName : string; const ATableName : string);
var
TblDesc : CRTblDesc;
TempDBHandle : HDBIDb;

begin
FillChar(TblDesc, sizeof(TblDesc), 0);
with TblDesc do begin
StrPCopy(szTblName, ATableName);
StrCopy(szTblType, szPARADOX);
bPack := true;
end;

try
Check(dbiOpenDatabase(PChar(ADatabaseName), Nil, dbiREADWRITE, dbiOpenExcl, Nil, 0, Nil, Nil, TempDBHandle));
try
Check(dbiDoRestructure(TempDBHandle, 1, @TblDesc, Nil, Nil, Nil, false));
finally
dbiCloseDatabase(TempDBHandle);
end;
except
end;
end;

Все таблицы

procedure PackAllParadoxTables(const ADatabaseName : string);
var
List : TStrings;
i : integer;
NewSession : TSession;

begin
NewSession := TSession.Create(nil);
List := TStringList.Create;
try
NewSession.SessionName := "NewSession";
NewSession.KeepConnections:= False;
NewSession.Open;
NewSession.GetTableNames(ADatabaseName, "*.db",False, False, List);
for i := 0 to List.Count - 1 do
PackParadoxTable(ADatabaseName, List[i]);
finally
List.Free;
NewSession.Free;
end;
end;



deleon   (2002-03-01 09:02) [3]

Еще одна библиотека компонент для работы с BDE и таблицами:
http://www.dbwork.kuban.ru/download/degisydb.zip



roman001   (2002-03-03 19:20) [4]

Спасибо, буду пробовать




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.025 c
1-90865           BMax                  2002-03-16 07:12  2002.03.28  
Задержка времени


14-91071          APL                   2002-02-16 13:47  2002.03.28  
Читалка форума в оффлайне


1-90869           Leo_                  2002-03-17 12:48  2002.03.28  
Ping


7-91094           BFG                   2001-12-26 23:31  2002.03.28  
Мышь


14-91050          Дмитрий               2002-02-14 11:48  2002.03.28  
Мистика