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

Вниз

Упаковка БД   Найти похожие ветки 

 
Zlod3y   (2004-07-01 01:25) [0]

Упаковывал базу с одной таблицей (эксперимент был), в которой было удалено 65536 записей.......упаковалось нормально как через JRO так и через DAO......только проблема вот в чём: та база, которая была прописана в ODBC не упаковывалась (выдавало ошибку, типа "фаил уже используется" и т. п.), а вот та база, которая в ODBC не фигурирует, нормально упаковалась....!!!!

Почему так? Что я делаю неправильно?


 
Zlod3y   (2004-07-01 01:28) [1]

вот отсюда я брал процедуры:

http://delphibase.endimus.com/?action=viewfunc&topic=baseaccess&id=10303

http://delphibase.endimus.com/?action=viewfunc&topic=baseaccess&id=10165


 
sniknik ©   (2004-07-01 07:54) [2]

то что она в DSN ODBC прописана не означает что она открыта (используется), у тебя же явное указание на это. закрой все конекты/проги что ее используют (посмотри при нормально открытой базе рядом создается файл *.ldb, это можеш использовать как признак "открытости", пока он есть база открыта (кроме редких исключений)).


 
Zlod3y   (2004-07-01 08:46) [3]

я так и делаю:

Table1.Close;
CompactDatabase_JRO(ExtractFilePath(Application.ExeName) + "db1.mdb",ExtractFilePath(Application.ExeName) + "db1_pack.mdb","");
Table1.Open;

или

Table1.Close;
CompactAccessDatabase(ExtractFilePath(Application.ExeName) + "db1.mdb","");
Table1.Open;

Больше коннектов нет!
А ошибку выдаёт такую: "Попытка открыть базу данных, открытую пользователем "admin" на машине "такой-то" для монопольного доступа. Повторите попытку, когда база данных освободится"

самое интересно, что когда я запускаю программулю с предварительно закрытой базой, то всё упаковывается, а если она открывается при запуске, то см. выше :-(


 
sniknik ©   (2004-07-01 09:30) [4]

вместо Table1.Close; делай DataBase.Close; (если действительно других коннектов нет)


 
Zlod3y   (2004-07-01 09:31) [5]

Я не использую TDataBase.....


 
sniknik ©   (2004-07-01 09:32) [6]

> а если она открывается при запуске,
т.е. в дельфях открыта? (при старте у db компанентов стоит активность в труе?)


 
sniknik ©   (2004-07-01 09:34) [7]

> Я не использую TDataBase.....
тогда он создается по умолчанию (и открывается ес-но)


 
Zlod3y   (2004-07-01 09:47) [8]

дельфя закрыта была......:-)

Table1.DataBase.Close и Table1.DataBase.Close работают.....
осталось разобраться с Table1.DataBase.LoginPrompt!!!

да и спасибо за помощь



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

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

Наверх




Память: 0.48 MB
Время: 0.022 c
14-1089197485
mfender
2004-07-07 14:51
2004.07.25
Беда с ICQ


4-1086922908
EXE
2004-06-11 07:01
2004.07.25
Мастера, возможно ли набор символов в любом активном окне Windows


14-1088956768
}|{yk
2004-07-04 19:59
2004.07.25
Можно ли использовать with


1-1089795574
din
2004-07-14 12:59
2004.07.25
Подскажите пожалуйста какие нужны библиотеки


14-1089198887
infom
2004-07-07 15:14
2004.07.25
Я вот пользуюсь клиентом DMClient от nikkie