Удаление синонима (DROP SYNONYM)
Функция
Определение оператора удаления синонима таблицы (представления).
Спецификация
::=Синтаксические правила
-
Если задана опция
PUBLIC, то удаляется общий синоним, иначе – синоним в указанной<имя схемы>, иначе синоним в текущей схеме.create public synonym public_auto for system.auto; select * from public_auto; drop public synonym public_auto;
-
Опция
CASCADEзаставляет удалять все таблицы и представления, созданные на основе данного синонима.
Общие правила
-
Удаление синонима не влияет на объект (таблицу, представление), которому он был назначен.
-
Для удаления PUBLIC-синонима требуется уровень прав DBA.
-
Для удаления синонима с
<имя схемы>требуется уровень прав RESOUCE. -
При запуске ядра СУБД ЛИНТЕР с ключом
/COMPATIBILITY=STANDARDзапрещается удаление таблицы и синонима, на которую ссылаются представления (VIEW). При этом на консоль ядра и в файлlinter.outвыдаётся список объектов, ссылающихся на удаляемый объект и не позволяющих его удалить. Пример списка:INFO Can't delete relation '"SYSTEM"."TEST1" (#187)' because exists reference(s): "SYSTEM"."TESTV" (#188) "SYSTEM"."TESTV2" (#190)
-
Каскадное удаление таблицы на которую ссылаются представления (
VIEW) разрешено всегда.