Alias vs sinônimo (nos bancos de dados ORACLE) | Sinônimos privados e sinônimos públicos
Em inglês, sinônimo e alias têm quase os mesmos significados. Mas nos bancos de dados essas são duas coisas diferentes. Especialmente nos bancos de dados ORACLE, o uso de ambos é diferente. Os sinônimos são usados para referenciar objetos de um esquema ou banco de dados de outro esquema. Portanto, sinônimo é um tipo de objeto de banco de dados. Mas os aliases estão vindo de uma maneira diferente. Que significa; eles não são objetos de banco de dados. Aliases são usados para consultar tabelas, visualizações e colunas dentro de consultas.
Sinônimos
Estes são um tipo de objetos de banco de dados. Eles se referem a outros objetos no banco de dados. O uso mais comum de sinônimo é referenciar um objeto de um esquema separado usando outro nome. Mas sinônimos também podem ser criados para referenciar os objetos de outro banco de dados (em bancos de dados distribuídos, usando links de banco de dados). Tabelas, visualizações, funções, procedimentos, pacotes, sequências, visualizações materializadas, objetos de classe java e gatilhos podem ser usados como referências para os sinônimos. Existem dois tipos de sinônimos.
Aqui está uma sintaxe simples para criar um sinônimo em um banco de dados separado,
criar sinônimo myschema.mytable1 para [email protected] _link1
Como temos um sinônimo chamado mytable1 dentro myschema para [protegido por email] _link1 (tabela de banco de dados distribuído), podemos facilmente referenciar a tabela de banco de dados distribuído usando mytable1. Não precisamos usar o nome do objeto longo com o link do banco de dados em qualquer lugar.
Alias
Estes são apenas outro nome para uma exibição, uma tabela ou uma coluna dentro de uma consulta. Eles não são objetos de banco de dados. Portanto, aliases não são válidos em todos os lugares no esquema / banco de dados. Eles são válidos apenas dentro da consulta. Vamos ver este exemplo,
selecione tab1.col1 como c1, tab2.col2 como c2
de user1.tab1 tab1, user1.tab2 tab2
onde tab1.col1 = tab2.col2
Aqui, c1 e c2 são aliases de coluna, usados para tab1.col1 e tab2.col2, e tab1 e tab2 são aliases de tabela, usados para user1.table1 e user2.table2. Todos esses aliases são válidos somente nesta consulta.
Qual é a diferença entre Synonym e Alias (nos bancos de dados ORACLE)?
|