Разница между синонимом и псевдонимом

Оглавление:

Разница между синонимом и псевдонимом
Разница между синонимом и псевдонимом

Видео: Разница между синонимом и псевдонимом

Видео: Разница между синонимом и псевдонимом
Видео: Что такое синонимы? 2024, Май
Anonim

Синоним против псевдонима (в базах данных ORACLE) | Частные синонимы и общедоступные синонимы

В английском языке синоним и псевдоним имеют почти одинаковые значения. Но в базах данных это разные вещи. Их использование отличается, особенно в базах данных ORACLE. Синонимы используются для ссылки на объекты схемы или базы данных из другой схемы. Итак, синоним - это тип объекта базы данных. Но псевдонимы появляются по-другому. Это значит; они не являются объектами базы данных. Псевдонимы используются для ссылки на таблицы, представления и столбцы внутри запросов.

Синонимы

Это тип объектов базы данных. Они относятся к другим объектам в базе данных. Чаще всего синоним используется для ссылки на объект отдельной схемы с использованием другого имени. Но синонимы могут быть созданы и для ссылки на объекты другой базы данных (в распределенных базах данных с использованием ссылок на базы данных). Таблицы, представления, функции, процедуры, пакеты, последовательности, материализованные представления, объекты классов Java и триггеры могут использоваться в качестве ссылок для синонимов. Есть два типа синонимов.

  1. Частные синонимы (могут использоваться только создавшим их пользователем).
  2. Общедоступные синонимы (могут использоваться всеми пользователями, имеющими соответствующие права)

Вот простой синтаксис для создания синонима в отдельной базе данных, создать синоним myschema.mytable1 для [email protected] _link1

Поскольку у нас есть синоним mytable1 в myschema для [email protected] _link1 (таблица распределенной базы данных), мы можем легко ссылаться на таблицу распределенной базы данных, используя mytable1. Нам не нужно везде использовать длинное имя объекта со ссылкой на базу данных.

Псевдоним

Это просто еще одно имя для представления, таблицы или столбца внутри запроса. Они не являются объектами базы данных. Следовательно, псевдонимы действительны не везде в схеме / базе данных. Они действительны только внутри запроса. Давайте посмотрим на этот пример,

выберите tab1.col1 как c1, tab2.col2 как c2

из user1.tab1 tab1, user1.tab2 tab2

где tab1.col1 = tab2.col2

Здесь c1 и c2 - псевдонимы столбцов, которые используются для tab1.col1 и tab2.col2, а tab1 и tab2 - псевдонимы таблиц, которые используются для user1.table1 и user2.table2. Все эти псевдонимы действительны только внутри этого запроса.

В чем разница между синонимом и псевдонимом (в базах данных ORACLE)?

Синонимы - это тип объекта базы данных. Но псевдонимы - это просто имя для ссылки на таблицу, представление или столбец внутри запроса. Не объект базы данных

Синонимы могут быть созданы для таблиц, представлений, функций, процедур, пакетов, последовательностей, материализованных представлений, типов объектов класса Java и триггеров. Но псевдонимы используются только для представлений, таблиц и их столбцов

Поскольку синонимы являются объектом базы данных, они действительны внутри схемы (частный синоним) или внутри базы данных (открытый синоним). Но псевдонимы действительны внутри запроса, в котором они используются

Каждой схеме требуется привилегия «создать синоним» для создания синонимов. Но нет никаких привилегий использовать псевдонимы

Рекомендуем: