powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Хочу создать триггер на view, а SQL меня ругает
4 сообщений из 4, страница 1 из 1
Хочу создать триггер на view, а SQL меня ругает
    #32008416
Сергей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здрасте.
Хочу создать триггер для viewa Radio_ShowPermissions. Вроде всё правильно написал, а сервер выдаёт ошибку "Error 208: Invalid object name 'Radio_ShowPermissions'"

Вот скрипт viewa:
CREATE VIEW dbo.Radio_ShowPermissions
AS
SELECT TOP 100 PERCENT
P.UserName, S.*,
COALESCE((SELECT CONVERT(bit, Permission_ID)
FROM Radio_UserPermissions UP
WHERE UP.UserName = P.UserName AND UP.Permission_ID = S.Permission_ID), 0) AS Granted

FROM Radio_StandardPermissions S, Radio_UserPermissions P
GROUP BY P.UserName, S.Permission_ID, S.PermissionName
ORDER BY P.UserName, S.PermissionName

А вот скрипт триггера (тело триггера чисто символическое):
CREATE TRIGGER Radio_GrantRevokePermission ON Radio_ShowPermissions
FOR UPDATE
AS
if UPDATE(Granted) and Granted=0 delete from Radio_UserPermissions where UserName='asd'

Помогите пожалуйста, очень надо.
...
Рейтинг: 0 / 0
Хочу создать триггер на view, а SQL меня ругает
    #32008418
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чего это у тебя во вьюхе FROM 2 раза встречается ? Выкинь один
...
Рейтинг: 0 / 0
Хочу создать триггер на view, а SQL меня ругает
    #32008420
Genady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 GreenSunrise

Да хоть не одного from, тригер повесить не удастся

2 Сергей

Триггер на view повесить нельзя до 2000 -го, а в MS SQL Server 2000 можно только Instead of, а Вы на апдейт пытаетесь.
...
Рейтинг: 0 / 0
Хочу создать триггер на view, а SQL меня ругает
    #32008431
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри, глаза у меня были явно на затылке. С view все в порядке.
Если в триггере вместо for update написать instead of update, то все пройдет нормально, за исключением того, что колонку Granted триггер все равно не узнает, видимо из-за того, что она вычисляемая. Но эту конструкцию действительно нельзя будет использовать на SQL меньше, чем 2000. Почему такая неподходящая к случаю ошибка "Invalid object name 'Radio_ShowPermissions'.", не знаю.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Хочу создать триггер на view, а SQL меня ругает
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]