Форум: "Базы";
Поиск по всему сайту: 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.028 c
3-42706           VV                    2002-01-18 10:58  2002.02.14  
Из Oracle в локальную БД


1-42733           Beerkoff              2002-01-30 18:02  2002.02.14  
Мигание Canvas в D6


1-42810           Анатолий              2002-02-01 07:10  2002.02.14  
Шрифт


1-42747           perov                 2002-01-30 09:48  2002.02.14  
работа с объектами в TStringList


14-42849          fliz                  2001-12-25 10:32  2002.02.14  
Кто какие елки ставить будет - натуральные или исскуственные ?