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

Вниз

Firebird и представления   Найти похожие ветки 

 
LoDr   (2007-12-27 17:31) [0]

Есть на клиенте запрос
"Select field1, field2 from MyView",
где MyView- представление,
который периодически открывается с пом. датасета(FIBPlus):
 With pFIBDataSet1 do
 begin
   Open;
   ...//Смотим че там происходит и закрываем!
   Close;
 end;


Проблема заключается в том, что если требуется изменить MyView и он был уже просмотрен на подключенном к базе клиенте(даже если запрос и закрыт), то IBExpert говорит:
"object MyView is in use".
Перекомпилить MyView можно только после отключения клиента.
Обьясните плз, где тут собаку зарыли), как можно "освободить" представление на клиенте?


 
Правильный_Вася   (2007-12-27 17:39) [1]

видимо, дело в том, что метаданные кэшируются
но т.к. такая проблема может возникнуть только на этапе разработки, не заморачивайся


 
LoDr   (2007-12-27 18:48) [2]

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

ЗЫ: Зачем же тогда эти представления, если толку от них...


 
atruhin ©   (2007-12-27 21:49) [3]

> Дело в том, что не только на этапе, т.к. условия этого представления
> могут иногда меняться,

В Firebird одно из основных правил: Нельзя менять метаданные во время работы программы.


 
Правильный_Вася   (2007-12-27 23:12) [4]


> условия этого представления могут иногда меняться

а что, нельзя заранее сделать много вьюх или накладывать условия на саму выборку из вьюхи?


 
Johnmen ©   (2007-12-28 08:48) [5]


> Дело в том, что не только на этапе, т.к. условия этого представления
> могут иногда меняться,

Значит что-то не так в консерватории.


 
Msguns ©   (2007-12-29 20:50) [6]

Вместо изменеоия вьюхи можно использовать параметры для варьирования условий выборки


 
DrPass ©   (2007-12-30 02:53) [7]


> ЗЫ: Зачем же тогда эти представления, если толку от них.
> ..

Как и в любой другой СУБД - для создания предопределенных выборок, но никак не средство для динамического исполнения запросов. В грамотно спроектированной базе данных не должно быть случаев изменения метаданных в рантайме.



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

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

Наверх




Память: 0.48 MB
Время: 0.025 c
15-1208484670
Wood
2008-04-18 06:11
2008.06.01
Не могу достать палитру компонентов!


15-1208255965
Layner
2008-04-15 14:39
2008.06.01
можно ли картой Visa Electron совершать интернет покупки в США?


2-1209883222
leonidus
2008-05-04 10:40
2008.06.01
Показ и скрытие нескольких форм


2-1210490776
Константин
2008-05-11 11:26
2008.06.01
ОшибкаSQL запроса"select * from opdohod where data1> 01.05.2008 "


15-1208400145
Slider007
2008-04-17 06:42
2008.06.01
С днем рождения ! 17 апреля 2008 четверг