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

Вниз

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]

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



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
3-90807
Зинец Виктор
2002-02-28 18:22
2002.03.28
Выбор схемы работы с удаленной БД и сервера БД


7-91086
again Lizard
2001-12-24 20:49
2002.03.28
Как заставить прогу открывать определенный ключ реестра с помощью Regedit.exe.


14-91051
Королев
2002-02-12 18:51
2002.03.28
считаете ли вы, что возможно появление некого второго поколения людей...


3-90762
af
2002-03-01 18:04
2002.03.28
Что за ошибка такая и как устанить =Blob already open =?


3-90771
Hawk2
2002-02-28 15:55
2002.03.28
Простой вопрос по Access.