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

Вниз

Восстановление базы Access   Найти похожие ветки 

 
Monk ©   (2003-06-10 11:18) [0]

Мастера помогите. Как восстановить посыпавшуюся базу програмным путем (из Делфи).


 
sniknik ©   (2003-06-10 11:58) [1]

var JROje: Variant;
begin
JROje:= CreateOleObject("JRO.JetEngine");
try
ADOConnection1.Close;
JROje.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;"+
"Data Source="+MyBase+";",
"Provider=Microsoft.Jet.OLEDB.4.0;"+
"Data Source="+TmpBase+";"+
"Jet OLEDB:Encrypt Database=True");
DeleteFile(MyBase);
RenameFile(TmpBase, MyBase);
finally
JROje:= Null;
end;
end;


 
Monk ©   (2003-06-10 12:01) [2]

А разве Compact восстанавливает, а не только сжимает?


 
sniknik ©   (2003-06-10 12:08) [3]

можеш использовать RepairDatabase

var DBEngine: Variant;
begin
DBEngine:= CreateOleObject("DAO.DBEngine.35");
try
ADOConnection1.Close;
DBEngine.RepairDatabase(MyBase);
finally
DBEngine:= Null;
end;
end;

но в "36" его уже нет, "35" не поддерживает 2000ю базу а в хелпе написано
RepairDatabase Method
Note The RepairDatabase method is no longer available, but listed for backwards compatibility. Use the CompactDatabase method instead.



 
Monk ©   (2003-06-10 12:13) [4]

Ага значит Compact должен делать и Repair, бо база 2000я.Спасибо.


 
NewD   (2003-06-10 12:17) [5]

Кстати RepairDatabase восстанволаввает не всегда.
У меня когда вылетала RepairDatabase не смог восстановить , а CompactDatabase восстановил.



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
14-7725
Knight
2003-06-16 21:57
2003.07.03
ПОРЯДОК... ПРОГРЕСС...


1-7469
AndreyAs
2003-06-20 16:26
2003.07.03
Как отследить нажатие мышью вне модальной формы


14-7625
_MAD_
2003-06-18 23:16
2003.07.03
Выключение компьютера в ДОСЕ


1-7513
pupil
2003-06-21 16:32
2003.07.03
Параллельная прокрутка


1-7512
Sabor
2003-06-21 17:39
2003.07.03
Exe-файл