Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.08.26;
Скачать: [xml.tar.bz2];

Вниз

ошибка: не могу открыть в эксклюзивном режиме   Найти похожие ветки 

 
Ильдар   (2002-08-01 15:36) [0]

Base.Active := False;
try
Base.Exclusive := True;
Base.Active := True;
Base.DeleteIndex("Name");
Base.AddIndex("Name", "Имя", [ixDescending]);
Base.Active := False;
Base.Exclusive := False;
except
Application.MessageBox("Could not open Base", "ERROR", MB_OK);
end;
Base.Active := True;

и сразу еще вопрос какие параметры использовать в AddIndex?


 
Ильдар   (2002-08-02 11:22) [1]

ну хоть кто-нить!!!!!


 
SaS13   (2002-08-02 11:36) [2]

При установке Exclusive = true во время проектирования свойство Active должно равняться false, так как в противном случае будет сообщение, что таблица уже используется.


 
Ильдар   (2002-08-02 12:04) [3]

у меня и так active=false


 
Mike Kouzmine   (2002-08-02 12:08) [4]

Если кто-то не открыл таблицу, то все должно быть нормально, а синтаксис AddIndex см. в хелпе, там все подробно с примерами


 
Ильдар   (2002-08-02 12:10) [5]

а если так
Base.IndexName := "";
Base.Close;
try
Base.Exclusive := True;
Base.Open;
Check(dbiRegenIndexes(Base.Handle));
Base.Exclusive := False;
except
Application.MessageBox("Could not open Base", "ERROR", MB_OK);
end;
Base.Open;


то на строке Check - искдючение и переходит в except


 
Anatoly Podgoretsky   (2002-08-02 12:11) [6]

Ильдар (01.08.02 15:36)
Почему ты решил, что именно не открывается, а скажем не другая ошибка, у тебя есть какие то тайные данные?


 
Mike Kouzmine   (2002-08-02 12:20) [7]

А ты попробуй при запущенном приложении реструкт. таблицу, тебе сообщат, кто держит таблицу.


 
Ильдар   (2002-08-02 12:38) [8]

Anatoly Podgoretsky © (02.08.02 12:11)
потому что говорит "не могу открыть таблицу в эксклюзивном режиме"


 
Anatoly Podgoretsky   (2002-08-02 12:46) [9]

Не должно такого быть, так как выработку сообщений об ошибке ты заблокировал, значит ты не все нам сказал.


 
Ильдар   (2002-08-02 14:18) [10]

сказал все
в блоке try первая строка выполняется
вторая тоже
на третьей вылетает
а на Base.Open - ошибка


 
SaS13   (2002-08-02 14:21) [11]

попробуй обработать так:
try
// тело
except
on E: Exception do
ShowMessage( E.Message )
end;
и скажи собщение кот. выдает..


 
Ильдар   (2002-08-02 14:25) [12]

Object not locked


 
SaS13   (2002-08-02 14:32) [13]

В какой момент ты пытаешься выполнить этот код?


 
Ильдар   (2002-08-02 14:35) [14]

по нажатию на кнопку "переиндексация", пока пробую только на одной машине (если правильно понял вопрос)


 
SaS13   (2002-08-02 14:40) [15]

тогда у меня больше никаких мыслей нет кроме того, что где-то в памяти сидит открытая табличка... может у тебя запрос к ней какой-нить открыт или еще чего, попробуй посмотри в диспетчере задач, может процесс какой остался, накрайняк перезагрузи комп..


 
SaS13   (2002-08-02 14:47) [16]

попробуй закрыть Delphi и перекинуть этот файл куда-нить, если перекинется, то что-то в Дельфях его держит, иначе - где-то сидит процесс


 
Ильдар   (2002-08-02 16:22) [17]

а если запускать не из DELPHI то cannot open for exclusive use


 
SaS13   (2002-08-02 16:25) [18]

Скорее всего ты где-то в проге перед переиндексацией делаешь запрос к таблице и не закрываешь его... проверь получше.


 
Ильдар   (2002-08-05 12:12) [19]

Ни один из запросов к этой таблице не обращается


 
SaS13   (2002-08-05 12:39) [20]

Неужто? =))
тогда мыль исходники, посмотрю, вдуг действительно паранойя..


 
Anatoly Podgoretsky   (2002-08-05 12:41) [21]

Ильдар (05.08.02 12:12)
Значит ты не веришь БДЕ?


 
fnatali   (2002-08-05 12:45) [22]

Ильдар
сделай новый проект, где напиши только эту процедуру и проверяй.



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

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

Наверх




Память: 0.48 MB
Время: 0.006 c
1-85025
СергейКнязев
2002-08-16 08:55
2002.08.26
Как изнасиловать ХИНТ?


14-85243
PVOzerski
2002-07-31 13:19
2002.08.26
Что за ерунда после переразбивки диска?


1-85044
Andrey Shakula
2002-08-14 11:06
2002.08.26
dsgnintf.pas


1-85093
lime
2002-08-14 22:58
2002.08.26
Символы в строках


1-85028
Андрусь
2002-08-16 13:18
2002.08.26
Как проинициализировать указатель...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский