Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Запись во вьюшки  [new]
R-Magistr
Member

Откуда:
Сообщений: 356
Здравствуйте.
Возник вопрос, а как происходит запись во вьюшки?
т.е. пишешь:
insert into TRANSIVPODRSPECS (vcode,pcode)
select row_number() over (order by vcode) rn
        ,vcode from trace

где TRANSIVPODRSPECS - вьюшка которая смотрит на табличку TRANSIVPODRSPECS_h
следующим кодом:
USE [RTPING]
GO
/****** Object:  View [dbo].[TRANSIVPODRSPECS]    Script Date: 03/05/2015 08:59:44 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

create view [dbo].[TRANSIVPODRSPECS] as select * from TRANSIVPODRSPECS_h where exists(select 1 from CurFilial 			 
where Spid = @@spid and CurFilial.Unitcode=TRANSIVPODRSPECS_h.UnitCode) 


Сработает ли вообще верхний insert?
Потом есть такая же ситуация, где вьюшки смотрят на таблицы в других базах, но в одной есть триггер на запись в конечную таблицу при инсерте в неё, а в другой нет, но запись всё равно происходит
И ещё вопрос, будет ли вообще вестись запись, если во вьюшке есть join сразу нескольких таблиц?
5 мар 15, 07:03    [17344853]     Ответить | Цитировать Сообщить модератору
 Re: Запись во вьюшки  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10234
Блог
R-Magistr
Сработает ли вообще верхний insert?

сработает

R-Magistr
И ещё вопрос, будет ли вообще вестись запись, если во вьюшке есть join сразу нескольких таблиц?

всё зависит от того, что конкретно делает ваше представление и какие столбцы выводит


а вообще про ограничения можно почитать тут: https://msdn.microsoft.com/ru-ru/library/ms187956.aspx раздел Обновляемые представления
5 мар 15, 11:52    [17345850]     Ответить | Цитировать Сообщить модератору
 Re: Запись во вьюшки  [new]
iap
Member

Откуда: Москва
Сообщений: 47001
Если представление необновляемое,
то его всё равно можно сделать обновляемым,
написав для него триггеры INSTEAD OF ...
5 мар 15, 12:18    [17346024]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить