Главная страница
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
1-1089701507
sergeii
2004-07-13 10:51
2004.07.25
Подскажите как в строке чисел наитйти букву


6-1085580515
cherrex
2004-05-26 18:08
2004.07.25
FTP Server


14-1088722657
kaif
2004-07-02 02:57
2004.07.25
Философские вопросы


1-1089285803
Tom
2004-07-08 15:23
2004.07.25
Oсвобождение критической секции


1-1089435194
Ivolg
2004-07-10 08:53
2004.07.25
Процедуры и функциии