Страница 1 из 1

A2ALMDB удалить записи

СообщениеДобавлено: Ср апр 04, 2018 1:41 pm
Starley
Добрый день, коллеги!

Возникла необходимость удалить определенные записи аварий из базы A2ALMDB. Простым запросом дело не обошлось, что ожидаемо))

Пробовал так:
USE [A2ALMDB]
GO
DELETE FROM [dbo].[v_AlarmHistory]
where area = 'Area_1' and tagname like 'LRP%' and EventStamp > '2018-04-04 09:30:00' and EventStamp < '2018-04-04 09:50:00'
GO

Получил ответ: View or function 'dbo.v_AlarmHistory' is not updatable because the modification affects multiple base tables.
В свойствах всех "вьюшек" нет разрешения на Delete из них, а вот в таблицах уже есть.
Есть-ли готовое решение по удалению записей по условию из A2ALMDB?
Версия: SP2014R2SP1

P.S.: разобрался сам.
Решение:
1. В свойствах внешнего ключа FK_AlarmDetail_AlarmMaster таблицы dbo.AlarmDetail выставить правило удаления на Cascade
2. В свойствах внешнего ключа FK_AlarmMaster_Cause таблицы dbo.AlarmMaster выставить правило удаления на Cascade
3. Далее

USE [A2ALMDB]
GO
DELETE FROM [dbo].[AlarmMaster]
where GroupName = 'Area_1' and tagname like 'LRP%' and Time > '2018-04-04 09:30:00' and EventStamp < '2018-04-04 09:50:00'
GO