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




Вниз

Таблицы 


Ольга   (2002-01-22 10:54) [0]

Подскажите пожалуйста, в чем ошибка.
У меня есть таблица Table1. При создании формы у этой таблицы tablename:="Data.dbf", потом при нажатии кнопки меняется значение Tablename:="last.dbf" и он пишет ошибку :
"Table cannot be operend for exclusive use", хотя я сначала закрываю ее, а потом переименовываю.



IronHawk   (2002-01-22 10:56) [1]

Ты не снимаешь с неё "ФОКУС"



Ольга   (2002-01-22 11:00) [2]

А в каком это свойстве?



sudiv   (2002-01-22 11:32) [3]

С кого надо снять ФОКУС ???



Ольга   (2002-01-22 11:33) [4]

с нее - наверное с таблицы...



sudiv   (2002-01-22 11:43) [5]

М-да. Смешно немного, извиняюсь.
Именно в TableName и порядке действий вроде нет ошибки.
Неплохо бы фрагмент кода ?



Desdechado   (2002-01-22 11:44) [6]

есть свойство Exclusive. почитай справку.
коротко: если оно True, то таблицу может открыть только одна программа один раз. никто, пока она открыта, не может больше ее открыть, даже та же самая программа.
поэтому либо сделай False (это даст подключаться к таблице нескольким пользователям/программам одновременно), или гарантируй однопользовательский режим доступа к ней.



sudiv   (2002-01-22 11:45) [7]

М-да. Смешно немного, извиняюсь.
Неплохо бы фрагмент кода
с закрыванием и переименовыванием ?



Ольга   (2002-01-22 11:51) [8]

Table2.close;
Table2.CachedUpdates:=false;
table2.TableName:="Last.dbf";
table2.Exclusive:=false;
Table1.EmptyTable;


И на последней строке он выдает ошибку - см. выше



Ольга   (2002-01-22 11:52) [9]

Exclusive:=false;

У меня с самого начала стоит



gek   (2002-01-22 11:59) [10]

Table2.close;
Table2.CachedUpdates:=false;
table2.TableName:="Last.dbf";
table2.Exclusive:=true; // <<<<<<<<<<<<
Table1.EmptyTable;
table2.Exclusive:=false;

Весь код не будет работать под Delhi IDE т.е. c загруженным Delphi с этой прогой



Ольга   (2002-01-22 12:06) [11]

Извините, не поняла...
почему true и почему не будет работать?



Desdechado   (2002-01-22 12:14) [12]

для очистки таблицы требуется монопольный режим (Exclusive = True)
А в Delphi IDE не будет работать, если в DesignTime таблица уже открыта



panov   (2002-01-22 12:17) [13]

>Ольга (22.01.02 12:06)
table2.Exclusive:=true; означает, что таблица открывается в монопольном режиме для выполнения привилегированных(глобальных) операций, какой в данном случае является EmptyTable.



Ольга   (2002-01-22 12:18) [14]

table2.Exclusive:=true; // <<<<<<<<<<<<
Table1.EmptyTable;
table2.Exclusive:=false;

Очищается другая же таблица



Ольга   (2002-01-22 12:21) [15]

table1 - очищается
Table2 - переименовывается



gek   (2002-01-22 12:23) [16]

Table1 должна быть закрыта и установлен монопольный режим
до очистки таблицы


Table2.close;
Table2.CachedUpdates:=false;
table2.TableName:="Last.dbf";
table2.Exclusive:=false;
Table1.EmptyTable;


>>И на последней строке он выдает ошибку - см. выше
Вот именно




Ольга   (2002-01-22 12:30) [17]

Блин, догнала, спасибо большое...



sudiv   (2002-01-22 15:28) [18]

Ну все ответы перехватили!, а говорят отвечать уже на вопросы не хочется. Ностальгия замучила.
А тут ответить даже не дают. :)))




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




Наверх





Память: 0.74 MB
Время: 0.015 c
14-42838          artur                 2001-12-25 10:32  2002.02.14  
какой delphi устанавливается под windows 2000


14-42853          zero                  2001-12-26 11:59  2002.02.14  
Сегодня день рождения Чарльза Бэббиджа - изобретателя компьютера


1-42767           Ghost.                2002-01-31 11:22  2002.02.14  
Определение пути к исполняемогу файлу и его имя


14-42870          BWG                   2001-12-24 14:47  2002.02.14  
Требуется написать терминалку


3-42663           MVova                 2002-01-18 14:00  2002.02.14  
Вопрос: Как переустановить 2.5 поверх 2.6?