![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обновляемы просмотры [D6, IB5.x]
Ренат © (2002-11-15 10:38:00)Есть такой просмотр
CREATE VIEW my (
PID,
DISTRICTNM
) AS
select
P.PID,District.NM
from P
left join DISTRICT on P.DISTRICTID=DISTRICT.DISTRICTID
Можно ли как-нибудь сделать возможность его редактирования?
Reindeer Moss Eater (2002-11-15 18:40:00) [1]Для MSSQL например
-=Sergeante=- (2002-11-15 18:39:00) [2]
> Reindeer Moss Eater (15.11.02 18:08)
> Первое условие необязательно для некоторых серверов.
Для каких?
Reindeer Moss Eater (2002-11-15 18:08:00) [3]Первое условие необязательно для некоторых серверов.
-=Sergeante=- (2002-11-15 18:03:00) [4]
> passm © (15.11.02 11:18)
> Если в запросе просмотра присутствует какое-либо соединение,
> или сортировка
А если конкретно, то, чтобы просмотр можно было обновлять неоходимо одновременное выполнение след. условий:
1. Просмотр должен формироваться только из одной таблицы;
2. В просмотр должены быть включены все поля, имеющие аттрибут NOT NULL
3. Оператор SELECT просмотра не должен использовать аггрегир-х функций, HAVING, соединения т-ц, DISTINCT и хранимых проц-р.
Вот так.
passm (2002-11-15 12:25:00) [5]Reindeer Moss Eater (15.11.02 12:14)> Сортировки в просмотре быть не может по определениюПардон, ты прав...
Ренат © (15.11.02 11:05)> Это уже называется не редактируемый просмотр, а редактируемый набор данных (потомок TDataSet).
Reindeer Moss Eater (2002-11-15 12:14:00) [6]Сортировки в просмотре быть не может по определению, а этот конкретный просмотр становится обновляемым если CachedUpdates+UpdateSQL
passm (2002-11-15 11:18:00) [7]Если в запросе просмотра присутствует какое-либо соединение, или сортировка.., то он нередактируемый. Вполне обоснованное ограничение, ИМХО.
Ренат (2002-11-15 11:05:00) [8]не я имею в виду создание самого запроса с возможностью конкретно его самого редактирования
Val (2002-11-15 11:03:00) [9]с помощью редактирования соотв. таблиц.