Suponha que precisamos trazer informações de algumas filiais.

Alguns passos como verificação do link devem ser seguidos.

Assim utilizaremos o procedimento disponível nas *consultas distribuídas, sys.sp_testlinkedserver

 

Aconselho firmemente a leitura do link abaixo e estude sobre o tema consultas distribuídas.

 

A Microsoft disponibiliza a tecnet https://technet.microsoft.com/pt-br/ então não tem desculpa.

 

 

 

* Consultas distribuídas ==> Consultas distribuídas acessam dados de várias fontes de dados heterogêneas

https://technet.microsoft.com/pt-br/library/ms188721(v=sql.105).aspx

 

 

Exemplo :

 

 

 

USE << SEU BANCO LOCAL >>

 

declare @TestedServerReturnValue int

SET @TestedServerReturnValue = 0

 

 

BEGIN TRY

    EXEC @TestedServerReturnValue = sys.sp_testlinkedserver << FILIAL 01 >>

END TRY

BEGIN CATCH

    SET @TestedServerReturnValue = @@error

END CATCH

 

IF @TestedServerReturnValue = 0 BEGIN

     DELETE FROM ....

                 SET NOCOUNT ON;

                INSERT INTO ....

                 print ' CONECTADO << FILIAL 01 >> '  

END

ELSE BEGIN

     print ' Could not connect << FILIAL 01 >> '

END

 

SET @TestedServerReturnValue = 0;

 

 

 

BEGIN TRY

    EXEC @TestedServerReturnValue = sys.sp_testlinkedserver << FILIAL 02 >>

END TRY

BEGIN CATCH

    SET @TestedServerReturnValue = @@error

END CATCH

 

 

IF @TestedServerReturnValue = 0 BEGIN

     DELETE FROM ....

                 SET NOCOUNT ON;

                INSERT INTO ....

                 print ' CONECTADO << FILIAL 02 >> '  

END

ELSE BEGIN

     print ' Could not connect << FILIAL 02 >> '

END

 

 

SET @TestedServerReturnValue = 0;