Am 03.02.2011 10:56, schrieb Vlad Khorsun:
До 2.5 имена классов безопасности для таблиц формировались как
SQL$<table>, есс-но из имени таблицы бралось 27 символов. Поэтому
была возможна ситуация, когда для 2-х таблиц с одинаковым префиксом
в >=27 символов использовался один и тот же класс безопасности, и
гранты "перемешивались".

В 2.5 (ODS 11.2) имена классов безопасности больше не используют
этот метод именования и не связаны с именами таблиц. Но, как позже
выяснилось, движки до 2.5 проверяют соответствие имени классов
безопасности имени таблицы, отсюда проблемы с даунгрейдом при ресторе.

спасибочки.
Посмотрел у себя и точно: в RDB$PROCEDURES содержимое поля RDB$SECURITY_CLASS в новом формате, в таблице RDB$RELATIONS же пока всё по-старому, наверное потому что пока все объекты имеют имена не длиньше 27-ми символов.

Теперь ясно почему не работает и просто нужно принять это.

Ответить