none
Se conectar em dois bancos diferentes pela janela "New Query"

    Question

  • Olá pessoal, tudo bem?

    Perguntinha boba, mas vamos lá:

    Eu tenho acesso a apenas um único servidor com o Management Studio, com isto eu fui conectando em "Object Explorer" todos os servidores nos quais eu possuo acesso, então sequencialmente eu estou vendo os seguintes servidores:

    db-c-server-01
    db-c-server-02
    db-c-server-03

    Eu tenho um script que executar instruções SQL nos três servidores. Como chamo pelo T-SQL a conexão e execução com um outro banco? Por exemplo, tentei algo do tipo:

    USE db-c-server-01.AdventureWorks
    SELECT * FROM Person.Contact

    USE db-c-server-02.AdventureWorks
    SELECT * FROM Person.Contact

    No MEU CASO, as duas tabelas possuem dados diferentes e além de instruções de consulta, tenho instruções de INSERT e UPDATE no banco por exemplo.
    E eu não quero ter que ficar abrindo diversas Query para ir executando banco a banco as instruções.

    Alguém pode me ajudar?
    Abs!

    Friday, July 30, 2010 12:44 AM

Answers

  • Olá Marcelo Fernandes,

    Obrigado! Mas é justamente isto que eu não quero, ter que abrir uma "New Query" para cada servidor.

    Jr. Galvão,

    Acabei de criar os linkeds servers, veja:

    USE ADVENTUREWORKS
    GO
    SELECT * FROM PERSON.CONTACT

    EXEC SP_ADDLINKEDSERVER
        'DB-SERVER-02',
        N'SQL Server'
    GO
    USE ADVENTUREWORKS
    GO
    SELECT * FROM PERSON.CONTACTTYPE
    EXEC SP_DROPSERVER 'DB-SERVER-02'

    Funcionou a consulta =)
    Vlw ;D

    Friday, July 30, 2010 3:44 PM

All replies

  • Vinão,

    Você criou os linked servers entre estes servidores?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário]
    Friday, July 30, 2010 1:17 AM
  • Vinão,

    se vc usa SQL Server 2008 é possível, na janela de Registered Servers, crie um grupo para com os seus 3 servidores, apósi to clique com o botão direito no grupo e escolha a opcao "New Query", as ações executadas nesta janela afetará os servidores do grupo.

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba
    Friday, July 30, 2010 1:09 PM
    Moderator
  • Olá Marcelo Fernandes,

    Obrigado! Mas é justamente isto que eu não quero, ter que abrir uma "New Query" para cada servidor.

    Jr. Galvão,

    Acabei de criar os linkeds servers, veja:

    USE ADVENTUREWORKS
    GO
    SELECT * FROM PERSON.CONTACT

    EXEC SP_ADDLINKEDSERVER
        'DB-SERVER-02',
        N'SQL Server'
    GO
    USE ADVENTUREWORKS
    GO
    SELECT * FROM PERSON.CONTACTTYPE
    EXEC SP_DROPSERVER 'DB-SERVER-02'

    Funcionou a consulta =)
    Vlw ;D

    Friday, July 30, 2010 3:44 PM
  • Vinão,

    etou me referindo a uma nova feature no 2008 R2, o Multi-server management, vc vai abrir uma unica query, o os comando que vc rodar nesta janela vai ser aplicado nos tres.

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba
    Friday, July 30, 2010 5:13 PM
    Moderator