FB 1.5.3 Linux/Classic
Понимаю, что ничего не понимаю...
И от долгого думания становится все хуже, и тем более прошу ткнуть меня
в какой-нибудь документ, где про это уже написано.
На триггерах реализована некая бизнес-логика. До/после апдейтов
выполняется (при соблюдении определенных условий) коррекция зависимых
таблиц (UPDATE и всякие EXECUTE PROCEDURE).
Так вот, пользователь, которому назначена некая роль и который указал ее
при подключении, натыкается на ограничение прав, если по цепочке
действий, выполняемых триггерами, он не имеет права на UPDATE некой
таблицы. НО (!) согласно входным параметрам этого SQL-запроса я вижу,
что до UPDATE дело вообще-то и не дойдет, т.к. триггер начинается с IF и
это условие НЕ ВЫПОЛНЯЕТСЯ, т.е. триггер-то фактически ничего не
сделает. А ошибку про отсутствие прав почему-то получаю!
Получается, что права проверяются не во время, а ДО выполнения запроса и
бесприменительно к семантике тела триггеров?
--
Regards,
Ovchinnikov Vasily
ova at tkvc ru