none
Synonyms : Sua Real Finalidade RRS feed

  • Pergunta

  • Olá Desenvolvedores, boa tarde!

    Na prática, um Create Synonym seria para facilitar e referênciar a buscar de tabelas em instâncias diferentes ?

    Porque local, qual é a diferença entre uma View e um Synonym ?


    Gilberto Herminio Analista de Desenvolvimento de Sistemas Mogi das Cruzes-SP desenvolvedor.ti@r7.com / gil_haf@ig.com.br

    domingo, 18 de março de 2012 19:13

Respostas

  • Gilberto, boa noite!

    não necessáriamente em instancias diferentes, mas também em schemas ou databases distintos em uma mesma instância. Além disso, o uso dos Synonym não se restringe à tabelas, podendo ser utilizados também em procedures, funções entre outros.

    Acho que vale também ressaltar que em uma view, é possível especificar um bloco de instruções que por sua vez podem produzir um resultado baseado na junção de diversas tabelas. Por exemplo, uma view que faz um select nas tabelas de "Pedido" e "Cliente" de um sistema para listar os pedidos efetuados por cada cliente.

    Já o synonym, só pode ser criado a partir de um objeto e não do resultado de uma query.

    Segue link do BOL para maiores informações:

    http://msdn.microsoft.com/pt-br/library/ms177544.aspx


    Espero que ajude! Luiz Phellipe

    • Marcado como Resposta Heloisa Pires terça-feira, 20 de março de 2012 15:05
    segunda-feira, 19 de março de 2012 03:17
  • Boa Tarde,

    Views e sinônimos são objetos parecidos, mas ligeiramente diferentes. A View permitirá que você combine dados de tabelas diferentes e os sinônimos não. Em contrapartida, a View mantêm seus metadados e o sinônimo não (o que pode ser uma vantagem). Se você faz uma view com SELECT *, para simular o sinônimo, novas colunas não serão contempladas, pois, a view não atualiza automaticamente (mesmo com o *). Em contrapartida, no sinônimo não teríamos esse problema.

    Não costumo usar sinônimos, mas para aplicações que não podem ter seu código alterado e por alguma razão você precisa renomear o nome da tabela, o uso de sinônimos é muito bem vindo.

    Use o sinônimo quando precisar de um Alias para a tabela. Para outras situações, a view é mais interessante.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos:http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível

    • Sugerido como Resposta Gustavo Maia Aguiar segunda-feira, 19 de março de 2012 15:53
    • Marcado como Resposta Heloisa Pires terça-feira, 20 de março de 2012 15:05
    segunda-feira, 19 de março de 2012 15:53

Todas as Respostas

  • Gilberto, boa noite!

    não necessáriamente em instancias diferentes, mas também em schemas ou databases distintos em uma mesma instância. Além disso, o uso dos Synonym não se restringe à tabelas, podendo ser utilizados também em procedures, funções entre outros.

    Acho que vale também ressaltar que em uma view, é possível especificar um bloco de instruções que por sua vez podem produzir um resultado baseado na junção de diversas tabelas. Por exemplo, uma view que faz um select nas tabelas de "Pedido" e "Cliente" de um sistema para listar os pedidos efetuados por cada cliente.

    Já o synonym, só pode ser criado a partir de um objeto e não do resultado de uma query.

    Segue link do BOL para maiores informações:

    http://msdn.microsoft.com/pt-br/library/ms177544.aspx


    Espero que ajude! Luiz Phellipe

    • Marcado como Resposta Heloisa Pires terça-feira, 20 de março de 2012 15:05
    segunda-feira, 19 de março de 2012 03:17
  • Boa Tarde,

    Views e sinônimos são objetos parecidos, mas ligeiramente diferentes. A View permitirá que você combine dados de tabelas diferentes e os sinônimos não. Em contrapartida, a View mantêm seus metadados e o sinônimo não (o que pode ser uma vantagem). Se você faz uma view com SELECT *, para simular o sinônimo, novas colunas não serão contempladas, pois, a view não atualiza automaticamente (mesmo com o *). Em contrapartida, no sinônimo não teríamos esse problema.

    Não costumo usar sinônimos, mas para aplicações que não podem ter seu código alterado e por alguma razão você precisa renomear o nome da tabela, o uso de sinônimos é muito bem vindo.

    Use o sinônimo quando precisar de um Alias para a tabela. Para outras situações, a view é mais interessante.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos:http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível

    • Sugerido como Resposta Gustavo Maia Aguiar segunda-feira, 19 de março de 2012 15:53
    • Marcado como Resposta Heloisa Pires terça-feira, 20 de março de 2012 15:05
    segunda-feira, 19 de março de 2012 15:53
  • Luiz/Gustavo, obrigado por seus retornos....

    Vou pesquisar mais inda sobre este assunto mas, seus comentários já foram uma excelente aula !!

    Sucesso!!


    Gilberto Herminio Analista de Desenvolvimento de Sistemas Mogi das Cruzes-SP desenvolvedor.ti@r7.com / gil_haf@ig.com.br

    segunda-feira, 19 de março de 2012 21:48