SlideShare una empresa de Scribd logo
Universidad Técnica de Ambato
        Facultad de Ingeniería en Sistemas,
              Electrónica e Industrial




     CARRERA DE INGENIERÍA EN SISTEMAS
                                  Informe
                                    Tema:
                Linked Served a Acces, Oracle, Firebird y Postgres




    Carrera Universitaria:         Sistemas Computacionales e Informáticos


    Semestre:                      Sexto Semestre

    Alumno participante:
                                   Juan Carlos Calvache

    Módulo:

                                   Base de Datos Distribuidos
UNIVERSIDAD TÉCNICA DE AMBATO
                    Facultada de Ingeniería en Sistemas, Electrónica e Industrial

Objetivos:

          Analizar las diferentes maneras y dificultad que existe para crear una conexión desde el
           motor SGBD SQL-Server a cualquier otro motor SGBD.
          Obtener datos de otro SGBD (Access, Oracle, Firebird, Postgres) mediante un Select.

Marco Teórico:

                                       LINKED SERVER 2008

En este informe se muestra cómo crear un servidor vinculado y tener acceso a los datos desde
otra instancia de SQL Server mediante SQL Server Management Studio. La creación de un
servidor vinculado permite trabajar con datos de varios orígenes. El servidor vinculado no
necesita ser otra instancia de SQL Server, sino que es un escenario común.

Un servidor vinculado permite obtener acceso a consultas heterogéneas distribuidas en orígenes
de datos OLE DB. Después de crear un servidor vinculado, las consultas distribuidas se pueden
ejecutar en este servidor. Las consultas pueden unir tablas de varios orígenes de datos. Si el
servidor vinculado se define como instancia de SQL Server, se pueden ejecutar procedimientos
almacenados remotos.

Se puede utilizar cualquiera de los siguientes:

         SQL Server Management Studio
         Transact-SQL

                            El uso de SQL Server Management Studio

Para crear un servidor vinculado a otra instancia de SQL Server mediante SQL Server
Management Studio

      1. En SQL Server Management Studio, el Explorador de objetos abierta, expanda Objetos
         de servidor, haga clic en Servidores vinculados y, a continuación, haga clic en Nuevo
         servidor vinculado.
      2. En general página, en el servidor vinculado, escriba el nombre de la instancia de SQL
         Server que se une a la zona.

           SQL Server

           Identificar el servidor vinculado como una instancia de Microsoft SQL Server. Si utiliza
           este método para definir un servidor vinculado de SQL, el nombre especificado en
           el servidor vinculado debe ser el nombre de red del servidor. Además, las tablas se
           recuperan del servidor son de base de datos predeterminada definida para el inicio de
           sesión en el servidor vinculado.

           Otra fuente de datos




Autor: Calvache Juan Carlos                                                         7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                  Facultada de Ingeniería en Sistemas, Electrónica e Industrial

       Especifique el tipo de servidor OLE DB que no sea de SQL Server. Al hacer clic en esta
       opción, se activan las opciones debajo de él.

       Proveedor

       Seleccione un origen de datos OLE DB en el cuadro de lista. El proveedor OLE DB se ha
       registrado en el PROGID dado en el registro.

       Nombre del producto

       Escriba el nombre de producto del origen de datos OLE DB para agregar como un
       servidor vinculado.

       Fuente de los datos

       Escriba el nombre del origen de datos tal como fue interpretado por el proveedor de OLE
       DB. Si se conecta a una instancia de SQL Server, proporcione el nombre de la instancia.

       Proveedor de cadena

       Escriba el identificador de programación único (PROGID) del proveedor OLE DB que
       corresponde a la fuente de datos. Para ver ejemplos de cadenas de proveedores
       válidos, consulte sp_addlinkedserver (Transact-SQL) .

       Ubicación

       Escriba la ubicación de la base de datos tal como fue interpretado por el proveedor de
       OLE DB.

       Catálogo

       Escriba el nombre del catálogo para usar cuando se realiza una conexión con el
       proveedor de OLE DB.

       Para poner a prueba la capacidad de conectarse a un servidor vinculado, en el
       Explorador de objetos, haga clic en el servidor vinculado y, a continuación, haga clic en
       Probar conexión.

   3. En el tipo de servidor área, seleccione SQL Server para indicar que el servidor
      vinculado que es otra instancia de SQL Server.
   4. En la seguridad de la página, especifique el contexto de seguridad que se utilizará
      cuando el original SQL Server se conecta al servidor vinculado. En un entorno de
      dominio en el que los usuarios se conectan mediante el uso de su información de acceso
      de dominio, seleccionando Ya sea mediante el contexto de seguridad actual de inicio
      de sesión es a menudo la mejor opción. Cuando los usuarios se conectan a la
      original de SQL Server mediante el uso de un SQL Server login, la mejor opción es a
      menudo para seleccionar Al utilizar este contexto de seguridad, y luego proporcionar
      las credenciales necesarias para autenticar en el servidor vinculado.


Autor: Calvache Juan Carlos                                                       7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

       Inicio de sesión local

       Especifica el inicio de sesión local que se puede conectar al servidor vinculado. El inicio
       de sesión local puede ser un inicio de sesión utilizando la autenticación de SQL Server o
       un inicio de sesión de autenticación de Windows. Utilice esta lista para restringir la
       conexión a inicios de sesión específicos, o para permitir que algunos accesos para
       conectarse como un usuario diferente.

       Suplantar

       Pase el nombre de usuario y la contraseña de inicio de sesión local en el servidor
       vinculado. Para la autenticación de SQL Server, un usuario con el mismo nombre y
       contraseña debe existir en el servidor remoto. Para los inicios de sesión de Windows, el
       usuario debe ser un usuario válido en el servidor vinculado.

       Para utilizar la suplantación, la configuración debe cumplir con el requisito para la
       delegación.

       Usuario remoto

       Utilice el usuario remoto para asignar usuarios no definidos en inicio de sesión
       local. El usuario remoto debe ser un inicio de sesión de autenticación de servidor SQL
       en el servidor remoto.

       Clave de Acceso Remoto

       Especifique la contraseña del usuario remoto.

       Añadir

       Añadir un nuevo inicio de sesión local.

       Quitar

       Eliminación de un inicio de sesión local existente.

       No se hizo

       Especifica que la conexión no se realizará para los inicios de sesión no definidos en la
       lista.

       Se efectúen sin utilizar un contexto de seguridad

       Especificar que una conexión se realizará sin utilizar un contexto de seguridad para los
       inicios de sesión no definidos en la lista.

       Ya sea mediante el contexto de seguridad actual de inicio de sesión



Autor: Calvache Juan Carlos                                                       7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

       Especificar que una conexión se realizará utilizando el contexto de seguridad actual del
       inicio de sesión para las conexiones que no se definen en la lista. Si se conecta al
       servidor local mediante la autenticación de Windows, las credenciales de Windows se
       pueden utilizar para conectar con el servidor remoto. Si se conecta al servidor local
       utilizando autenticación de SQL Server, el nombre de usuario y contraseña se utiliza
       para conectar con el servidor remoto. En este caso un nombre de usuario con el mismo
       nombre y contraseña debe existir en el servidor remoto.

       Se establecerán usando este contexto de seguridad

       Especificar que una conexión se realizará utilizando el nombre de usuario y la
       contraseña especificados en el inicio de sesión remoto y con la contraseña de cajas
       para los inicios de sesión no definidos en la lista. El inicio de sesión remoto debe ser un
       inicio de sesión de autenticación de servidor SQL en el servidor remoto.

   5. Opcionalmente, para ver o especificar opciones de servidor, haga clic en el servidor
      Opciones de página.

       Colación Compatible

       Afecta la ejecución de consultas distribuidas en servidores vinculados. Si esta opción se
       establece en true, SQL Server considera que todos los caracteres del servidor vinculado
       son compatibles con el servidor local, con el juego de caracteres y orden de clasificación
       (o el orden). Esto permite a SQL Server para enviar las comparaciones en las columnas
       de caracteres al proveedor. Si esta opción no está activada, SQL Server siempre evalúa
       las comparaciones en las columnas de caracteres a nivel local.

       Esta opción sólo se debe establecer si es cierto que la fuente de datos correspondiente
       al servidor vinculado tiene el mismo juego de caracteres y orden de clasificación que el
       servidor local.

       Acceso a datos

       Habilita y deshabilita un servidor vinculado para el acceso a consultas distribuidas.

       RPC

       Habilita RPC desde el servidor especificado.

       RPC de salida

       Habilita RPC en el servidor especificado.

       Use remote collation

       Determina si la intercalación de una columna remota o de un servidor local será usado.




Autor: Calvache Juan Carlos                                                       7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

       Si es cierto, la intercalación de columnas remotas se utiliza para fuentes de datos de
       SQL Server y la intercalación especificada en nombre de intercalación se utiliza por falta
       de datos de SQL Server.

       Si es false, las consultas distribuidas siempre utilizará la colación por defecto del
       servidor local, mientras que el nombre de intercalación y la intercalación de columnas
       remotas se ignoran. El valor predeterminado es false.

       Nombre de intercalación

       Específica el nombre de la intercalación utilizada por el origen de datos remoto si use
       remote collation es true y el origen de datos no es de SQL Server origen de datos. El
       nombre debe ser una de las intercalaciones compatibles con SQL Server.

       Utilice esta opción cuando se accede a un origen de datos OLE DB que no sea de SQL
       Server, pero cuya colación coincide con una de las intercalaciones de SQL Server.

       El servidor vinculado debe permitir una sola intercalación que se utiliza para todas las
       columnas de ese servidor. No establezca esta opción si el servidor vinculado admite
       varias intercalaciones dentro de una única fuente de datos, o si la intercalación de
       servidor vinculado no puede ser determinado para que coincida con una de las
       intercalaciones de SQL Server.

       Tiempo de espera de conexión

       Tiempo de espera de valor en segundos para la conexión a un servidor vinculado.

       Si es 0, use el sp_configure predeterminado de tiempo de espera de consulta
       remota valor de opción.

       Tiempo de espera de consulta

       Tiempo de espera de valor en segundos para consultas en un servidor vinculado.

       Si es 0, use el sp_configure predeterminado de espera de consultas valor de opción.

       Activar Promoción de transacciones distribuidas

       Utilice esta opción para proteger las acciones de un procedimiento de servidor a servidor
       a través de un Coordinador de transacciones distribuidas de Microsoft (MS
       DTC). Cuando esta opción es TRUE, llamar a un procedimiento almacenado remoto
       inicia una transacción distribuida y pide la transacción con MS DTC. Para obtener más
       información, consulte sp_serveroption (Transact-SQL) .

   6. Haga clic en Aceptar.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

Para ver las opciones de proveedor

     Para ver las opciones que el proveedor pone a su disposición, haga clic en Opciones de
      Proveedores de página.

      Todos los proveedores no tienen las mismas opciones disponibles. Por ejemplo, algunos
      tipos de datos tienen índices disponibles y otras no. Utilice este cuadro de diálogo para
      ayudar a SQL Server comprender las capacidades del proveedor. SQL Server instala
      algunos proveedores de datos comunes, sin embargo, cuando el producto de la
      prestación de los cambios de datos, el proveedor de SQL Server instalado por no ser
      compatible con todas las nuevas características. La mejor fuente de información acerca
      de las capacidades del producto siempre que los datos de la documentación de dicho
      producto.

      Parámetro dinámico

       Indica que el proveedor permite '?' parámetro sintaxis marcador para consultas con
       parámetros. Establezca     esta    opción     sólo    si   el    proveedor     admite
       laICommandWithParameters interfaz y soporta un '?' como el marcador de
       parámetro. Al establecer esta opción permite a SQL Server para ejecutar consultas con
       parámetros en el proveedor. La capacidad de ejecutar consultas con parámetros en el
       proveedor puede resultar en un mejor rendimiento de determinadas consultas.

      Las consultas anidadas

       Indica que el proveedor permite que las sentencias nestedSELECT en la cláusula
       FROM. Al establecer esta opción permite a SQL Server delegar determinadas consultas
       al proveedor que requieren anidar instrucciones SELECT en la cláusula FROM.

      Nivel cero sólo

       Sólo nivel 0 interfaces OLE DB se invocan en el proveedor.

      Permitir inprocess

       SQL Server permite al proveedor para ejecutarse como un servidor en proceso. Cuando
       esta opción no está activada, el comportamiento predeterminado es crear una instancia
       del proveedor fuera del proceso de SQL Server. Instancias del proveedor fuera del
       proceso de SQL Server protege el proceso de SQL Server a partir de los errores en el
       proveedor. Cuando el proveedor se crea una instancia exterior, el proceso de SQL
       Server actualizaciones o inserciones referencia a columnas largas
       ( texto , ntext o imagen ) no están permitidos.

      No cambios negociados

       SQL Server permite actualizaciones, aunque ITransactionLocal no está disponible. Si
       esta opción está activada, las actualizaciones en contra del proveedor no son
       recuperables, porque el proveedor no admite transacciones.


Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

      Índice como ruta de acceso

       SQL Server intenta utilizar los índices del proveedor para recuperar los datos. De forma
       predeterminada, los índices sólo se utilizan para metadatos y nunca se abren

      No permitir el acceso ad hoc

       SQL Server no permite el acceso ad hoc a través de la OPENROWSET y
       OPENDATASOURCE contra el proveedor de OLE DB. Cuando esta opción no está
       activada, SQL Server también no permite el acceso ad hoc.

      'Like' Soporta operador

       Indica que el proveedor admite consultas utilizando la palabra clave LIKE.



                                  El uso de Transact-SQL

Para crear un servidor vinculado mediante Transact-SQL, utilice el sp_addlinkedserver
(Transact-SQL) CREATE LOGIN (Transact-SQL) y sp_addlinkedsrvlogin (Transact-SQL)
declaraciones.

Para crear un servidor vinculado a otra instancia de SQL Server con Transact-SQL

   1. En el Editor de consultas, escriba el siguiente comando Transact-SQL para acceder a
      una instancia de SQL Server denominada SRVR002  ACCTG :

       Transact-SQL

       USE [master]
       GO
       EXEC master.dbo.sp_addlinkedserver
         @ Server = N'SRVR002  ACCTG ',
         @ Srvproduct = N'SQL servidor ';
       GO

   2. Ejecute el código siguiente para configurar el servidor vinculado para utilizar las
      credenciales de dominio de inicio de sesión que utiliza el servidor vinculado.

       Transact-SQL

       EXEC master.dbo.sp_addlinkedsrvlogin
         @ Rmtsrvname N'SRVR002 =  ACCTG ',
         @ Locallogin = NULL,
         @ Useself N'True = ';
       GO



Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

Una vez que hemos creado un Servidor Vinculado podemos acceder repetidas
veces a dicho Origen de Datos sin tener que volver a especificar los datos de
conexión (sólo el nombre del Servidor Vinculado). Es más, si accedemos a dicho
Origen de Datos en múltiples consultas en múltiples sitios, si en un futuro
deseamos que la conexión se realice a otro Origen de Datos (ej: por motivo de
una migración del mismo).



PRACTICA:

                                  Linked Server a Access

Para hacer el servidor a Access no se necesita crear un ODBC por la razón que el SQL-server
tiene un proveedor para Access llamado “Microsoft OLE DB Provider for Analysis Services 10.0”
el mismo que se utilizará para la creación del servidor.

1. Damos click derecho sobre Linked Server y nos mostrara la siguiente pantalla, la cual será
   configurada asi:




2. Luego le damos en OK, luego damos click derecho y hacemos un Test Connection, para
   comprobar que la conexión se ha realizado exitosamente.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




3. Una vez comprobada la conexión, realizamos un Select para ver si nos permite obtener
   datos de Access. Lo hacemos con click derecho sobre el servidor, escogemos Script Linked
   Server as, luego Select to. Y nos aparece automáticamente la consulta Select. La
   ejecutamos y obtenemos los datos.




4. Luego procedemos hacer la consulta en el motor SQL-Server vinculando la consulta de
   Access. Y la ejecutamos.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

                                   Linked Server a Oracle.

Para hacer el servidor a Oracle no se necesita crear un ODBC por la razón que el SQL-server
tiene un proveedor para Oracle llamado “Oracle Provider for OLE DB”, este se instala cuando se
hace la instalación del Oracle, este se utilizará para la creación del servidor Oracle.

   1. Damos click derecho sobre Linked Server y nos mostrara la siguiente pantalla, la cual
      será configurada asi:




2. Luego que nos aparece la ventana la configuramos de la siguiente manera:




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




3. Luego nos dirigimos a Security y agregamos un login, Done Local Login se refiere al usuario
   SQL-Server, Remote Server se refiere al usuario oracle y Remote Password es la
   contraseña del usuario de oracle.




4. Luego le damos en OK, luego damos click derecho y hacemos un Test Connection, para
   comprobar que la conexión se ha realizado exitosamente. Seguidamente hacemos un select
   al motor Oracle para obtener datos.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




Para esta conexión he creado una tabla llamada Oracle, con el usuario System.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

Comprobación:




5. Luego hacemos la consulta SQL-Server vinculando la consulta Oracle. Y la ejecutamos.




                                   Linked server Firebird

Para hacer el servidor de Firebird. Instalamos el proveedor de Firebird desde SQL-Server, en
este caso me he descargado el IBProvider_trial_32-64_3.13.2.14066_i, Luego de descargarse le
instalamos. Seguidamente vamos a modificar el provider en el SQL-Server.

1. Click derecho sobre LCPI.IBProvider.3 y luego en propiedades




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




2. Luego en la ventana que nos aparece habilitamos lo siguiente:




3. Y luego le damos en OK, está configurado nuestro Provider.
4. En este caso probaremos de la segunda manera hacer el servidor por medio de código y no
   interfaz. Ingresaremos las siguientes líneas de código en SQL-Server 2008:

declare @LINKED_SERVER_NAME varchar(max);
declare @PRODUCT_NAME varchar(max);
declare @IBPROVIDER varchar(max);
declare @DATA_SOURCE varchar(max);
declare @CN_STR varchar(max);


set @LINKED_SERVER_NAME = N'FIREBIRD_SAMPLES';
set @PRODUCT_NAME             = N'BDFirebird_FDB';


Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                  Facultada de Ingeniería en Sistemas, Electrónica e Industrial

set @IBPROVIDER          = N'LCPI.IBProvider.3';
set @DATA_SOURCE           = N'c:oltpBDFirebird.fdb';
set @CN_STR = 'truncate_char=false; support_odbc_query=true;
       support_square_delim_name=1; user=sysdba; password=masterkey;
ctype=win1251;auto_commit = true';


/* DROP LINKED SERVER */
IF EXISTS (SELECT srv.name FROM sys.servers srv
 WHERE srv.server_id != 0 AND srv.name = @LINKED_SERVER_NAME)
 EXEC master.dbo.sp_dropserver @server=@LINKED_SERVER_NAME,
@droplogins='droplogins'


/* CREATE LINKED SERVER */
EXEC master.dbo.sp_addlinkedserver
  @server =     @LINKED_SERVER_NAME,
  @srvproduct = @PRODUCT_NAME,
  @provider = @IBPROVIDER,
  @datasrc = @DATA_SOURCE,
  @provstr = @CN_STR


/* set up Extended properties of the Linked Server */
EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME,
  @optname='data access', @optvalue='true'
EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME,
  @optname='rpc', @optvalue='true'
EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME,
  @optname='rpc out', @optvalue='true'
EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME,
  @optname='use remote collation', @optvalue='true'




Autor: Calvache Juan Carlos                                                       7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




5. Ejecutamos nuestro pequeño procedimiento.




6. Luego de ejecutar, nos aparece ya en la carpeta de linked server, nuestro servidor firebird.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




7. Damos click derecho en nuestro servidor firebird, y luego damos click en propiedades.




8. En la ventana que nos aparece agregamos el login como antes mencionado, en este caso,
   usuario SQL-Server sa, y usuario y contraseña de firebird.




9. Luego hacemos un test conection para verificar la conexion a la Base de Datos firebird.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




10. Luego procedemos hacer la consulta Select




11. Como vemos se nos realiza la consulta automáticamente, luego de ejecutamos y nos
    aparecerán los datos de la base de datos que se encuentra en Firebird.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




12. A continuación realizamos la consulta entre SQL-Server y Firebird.




                                   Linked server Postgres

Primeramente creamos un ODBC para Postgres, Para crear el ODBC he descargado
psqlodbc_09_01_0200-1, la instalación es fácil. Una vez instalado creamos el ODBC.

1. Creamos un DSN de usario , escojemos PostgreSQL ANSI




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

2. A continuación creamos el ODBC de la siguiente manera.




3. Luego probamos la conexión, dando click en Test.




4. Una vez probada la conexión le damos en aceptar, y nuestro ODBC esta listo.




5. A continuación creamos nuestro servidor a Postgres, lo haremos por medio de código, de la
   siguiente manera.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




USE[master]
go
EXEC master.dbo.sp_addlinkedserver @server = N'POSTGRES', @srvproduct=N'Postgres',
@provider=N'MSDASQL', @datasrc=N'PostgreSQL30'


go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'collation compatible',
@optvalue=N'false'
go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'data access',
@optvalue=N'true'
go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'rpc',
@optvalue=N'false'
go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'rpc out',
@optvalue=N'false'
go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'connect timeout',
@optvalue=N'0'
go




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'collation name',
@optvalue=null
go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'query timeout',
@optvalue=N'0'
go
EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'use remote collation',
@optvalue=N'true'
go
USE[master]
go
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'POSTGRES', @locallogin =NULL ,
@useself = N'False'
GO
6. Luego ejecutamos el procedimiento.




7. Efectivamente nuestro servidor esta creado, luego procederemos a la creación del login.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




8. Luego hacemos un Test Conecction para verificar la conexión.




9. A continuación haremos la consulta, pero en este caso utilizaremos un openquery.



Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial




10. Luego hacemos la consulta de SQL-Server 2008 vinculando o uniendo Postgres.




Conclusión:

Un Servidor Vinculado sirve para acceder a Orígenes de Datos OLEDB desde SQL Server (es
decir, para ejecutar Consultas Distribuidas, ejecutar Procedimientos Almacenados en servidores
remotos, etc).

En esta práctica hemos realizado solo un Select para comprobar las conexiones y extraer datos
desde otra Base de Datos a SQL-Server. Las conexiones se han comprobado y han sido
exitosas al igual que la extracción de datos.

Además hemos podido verificar las dos maneras de crear un servidor vinculado (Linked Server)
en SQL-Server 2008. También realizamos las consultas a cada SGBD(Access, Oracle, Firebird,
Postgres) desde SQL-Server 2008, select vinculados, los cuales han sido satisfactorios.




Autor: Calvache Juan Carlos                                                      7mo - Sistemas
UNIVERSIDAD TÉCNICA DE AMBATO
                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial

Bibliografía:

http://msdn.microsoft.com/es-es/library/ff772782.aspx

http://www.guillesql.es/Articulos/SQLServerFAQ_Servidor_Vinculado_OPENQUERY_Notacion_4
_Partes.aspx




Autor: Calvache Juan Carlos                                                      7mo - Sistemas

Más contenido relacionado

Similar a Linked server a acces, oracle, firebird, postgres

System.data.sqlclient
System.data.sqlclientSystem.data.sqlclient
System.data.sqlclient
ana leydi linares serrano
 
visual basic 6 yaniuska
 visual basic 6 yaniuska visual basic 6 yaniuska
visual basic 6 yaniuska
YaniuskaBello
 
Espacio de nombres system.data.sql client
Espacio de nombres system.data.sql clientEspacio de nombres system.data.sql client
Espacio de nombres system.data.sql client
LIZBETH LIZANA CARRASCO
 
Acceso a base de datos
Acceso a base de datosAcceso a base de datos
Acceso a base de datos
Andre Ramirez
 
Jdbc
JdbcJdbc
Bases de Datos Distribuidas con Sql Server 2012
Bases de Datos Distribuidas con Sql Server 2012Bases de Datos Distribuidas con Sql Server 2012
Bases de Datos Distribuidas con Sql Server 2012
Antonio Ortiz
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
José Antonio Sandoval Acosta
 
JDBC
JDBCJDBC
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
Erlin Darwin Herrera cieza
 
Admnistracion de la seguridad
Admnistracion de la seguridadAdmnistracion de la seguridad
Admnistracion de la seguridad
Fiorella Aguilar Isuiza
 
Modoconexion
ModoconexionModoconexion
Modoconexion
fanyto
 
Modo conexion
Modo conexionModo conexion
Modo conexion
byron salcedo
 
Connec
ConnecConnec
Acceso a datos con JAVA
Acceso a datos con JAVAAcceso a datos con JAVA
Acceso a datos con JAVA
Dada3311
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
GREINDER MARCHENA & LIZ VASQUEZ
 
Comparacion de Gestores de Base de Datos
Comparacion de Gestores de Base de DatosComparacion de Gestores de Base de Datos
Comparacion de Gestores de Base de DatosVictor Zevallos
 
JAVA DATABASE CONNECTIVITY (JDBC)
  JAVA DATABASE CONNECTIVITY (JDBC)  JAVA DATABASE CONNECTIVITY (JDBC)
JAVA DATABASE CONNECTIVITY (JDBC)
MILAGRINAMAGUINAPRINCIPE
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
Sonia Ramos Fernandez
 
Definición de-espacio-de-nombres
Definición de-espacio-de-nombresDefinición de-espacio-de-nombres
Definición de-espacio-de-nombres
DEYSY SEGURA MONTENEGRO
 

Similar a Linked server a acces, oracle, firebird, postgres (20)

System.data.sqlclient
System.data.sqlclientSystem.data.sqlclient
System.data.sqlclient
 
visual basic 6 yaniuska
 visual basic 6 yaniuska visual basic 6 yaniuska
visual basic 6 yaniuska
 
Informe base de datos 2
Informe base de datos 2Informe base de datos 2
Informe base de datos 2
 
Espacio de nombres system.data.sql client
Espacio de nombres system.data.sql clientEspacio de nombres system.data.sql client
Espacio de nombres system.data.sql client
 
Acceso a base de datos
Acceso a base de datosAcceso a base de datos
Acceso a base de datos
 
Jdbc
JdbcJdbc
Jdbc
 
Bases de Datos Distribuidas con Sql Server 2012
Bases de Datos Distribuidas con Sql Server 2012Bases de Datos Distribuidas con Sql Server 2012
Bases de Datos Distribuidas con Sql Server 2012
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
 
JDBC
JDBCJDBC
JDBC
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Admnistracion de la seguridad
Admnistracion de la seguridadAdmnistracion de la seguridad
Admnistracion de la seguridad
 
Modoconexion
ModoconexionModoconexion
Modoconexion
 
Modo conexion
Modo conexionModo conexion
Modo conexion
 
Connec
ConnecConnec
Connec
 
Acceso a datos con JAVA
Acceso a datos con JAVAAcceso a datos con JAVA
Acceso a datos con JAVA
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Comparacion de Gestores de Base de Datos
Comparacion de Gestores de Base de DatosComparacion de Gestores de Base de Datos
Comparacion de Gestores de Base de Datos
 
JAVA DATABASE CONNECTIVITY (JDBC)
  JAVA DATABASE CONNECTIVITY (JDBC)  JAVA DATABASE CONNECTIVITY (JDBC)
JAVA DATABASE CONNECTIVITY (JDBC)
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Definición de-espacio-de-nombres
Definición de-espacio-de-nombresDefinición de-espacio-de-nombres
Definición de-espacio-de-nombres
 

Último

Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
20minutos
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
20minutos
 
El lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libroEl lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libro
Distea V región
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
https://gramadal.wordpress.com/
 
665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf
665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf
665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf
valerytorresmendizab
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
20minutos
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
estroba5
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
pablomarin116
 
6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx
6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx
6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx
DanielaBurgosnazario
 
Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024
IES Vicent Andres Estelles
 
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptxEVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
Victor Elizalde P
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
JAVIER SOLIS NOYOLA
 
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMExamen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Juan Martín Martín
 
recursos naturales en chile quinto básico .pptx
recursos naturales en chile quinto básico .pptxrecursos naturales en chile quinto básico .pptx
recursos naturales en chile quinto básico .pptx
Waleska Chaparro
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
Alejandrino Halire Ccahuana
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
Osiris Urbano
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
https://gramadal.wordpress.com/
 
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIAFUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
ElenaGallardoPals
 
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdfGuia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Demetrio Ccesa Rayme
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
100078171
 

Último (20)

Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
 
El lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libroEl lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libro
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
 
665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf
665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf
665033394-TODAS-LAS-SANGRES-resumen-Por-Capitulos.pdf
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
 
6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx
6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx
6° GRADO UNIDAD DE APRENDIZAJE 3 JUNIO.docx
 
Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024
 
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptxEVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
 
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLMExamen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinaria). UCLM
 
recursos naturales en chile quinto básico .pptx
recursos naturales en chile quinto básico .pptxrecursos naturales en chile quinto básico .pptx
recursos naturales en chile quinto básico .pptx
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
 
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIAFUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
 
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdfGuia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
 

Linked server a acces, oracle, firebird, postgres

  • 1. Universidad Técnica de Ambato Facultad de Ingeniería en Sistemas, Electrónica e Industrial CARRERA DE INGENIERÍA EN SISTEMAS Informe Tema: Linked Served a Acces, Oracle, Firebird y Postgres Carrera Universitaria: Sistemas Computacionales e Informáticos Semestre: Sexto Semestre Alumno participante: Juan Carlos Calvache Módulo: Base de Datos Distribuidos
  • 2. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Objetivos:  Analizar las diferentes maneras y dificultad que existe para crear una conexión desde el motor SGBD SQL-Server a cualquier otro motor SGBD.  Obtener datos de otro SGBD (Access, Oracle, Firebird, Postgres) mediante un Select. Marco Teórico: LINKED SERVER 2008 En este informe se muestra cómo crear un servidor vinculado y tener acceso a los datos desde otra instancia de SQL Server mediante SQL Server Management Studio. La creación de un servidor vinculado permite trabajar con datos de varios orígenes. El servidor vinculado no necesita ser otra instancia de SQL Server, sino que es un escenario común. Un servidor vinculado permite obtener acceso a consultas heterogéneas distribuidas en orígenes de datos OLE DB. Después de crear un servidor vinculado, las consultas distribuidas se pueden ejecutar en este servidor. Las consultas pueden unir tablas de varios orígenes de datos. Si el servidor vinculado se define como instancia de SQL Server, se pueden ejecutar procedimientos almacenados remotos. Se puede utilizar cualquiera de los siguientes:  SQL Server Management Studio  Transact-SQL El uso de SQL Server Management Studio Para crear un servidor vinculado a otra instancia de SQL Server mediante SQL Server Management Studio 1. En SQL Server Management Studio, el Explorador de objetos abierta, expanda Objetos de servidor, haga clic en Servidores vinculados y, a continuación, haga clic en Nuevo servidor vinculado. 2. En general página, en el servidor vinculado, escriba el nombre de la instancia de SQL Server que se une a la zona. SQL Server Identificar el servidor vinculado como una instancia de Microsoft SQL Server. Si utiliza este método para definir un servidor vinculado de SQL, el nombre especificado en el servidor vinculado debe ser el nombre de red del servidor. Además, las tablas se recuperan del servidor son de base de datos predeterminada definida para el inicio de sesión en el servidor vinculado. Otra fuente de datos Autor: Calvache Juan Carlos 7mo - Sistemas
  • 3. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Especifique el tipo de servidor OLE DB que no sea de SQL Server. Al hacer clic en esta opción, se activan las opciones debajo de él. Proveedor Seleccione un origen de datos OLE DB en el cuadro de lista. El proveedor OLE DB se ha registrado en el PROGID dado en el registro. Nombre del producto Escriba el nombre de producto del origen de datos OLE DB para agregar como un servidor vinculado. Fuente de los datos Escriba el nombre del origen de datos tal como fue interpretado por el proveedor de OLE DB. Si se conecta a una instancia de SQL Server, proporcione el nombre de la instancia. Proveedor de cadena Escriba el identificador de programación único (PROGID) del proveedor OLE DB que corresponde a la fuente de datos. Para ver ejemplos de cadenas de proveedores válidos, consulte sp_addlinkedserver (Transact-SQL) . Ubicación Escriba la ubicación de la base de datos tal como fue interpretado por el proveedor de OLE DB. Catálogo Escriba el nombre del catálogo para usar cuando se realiza una conexión con el proveedor de OLE DB. Para poner a prueba la capacidad de conectarse a un servidor vinculado, en el Explorador de objetos, haga clic en el servidor vinculado y, a continuación, haga clic en Probar conexión. 3. En el tipo de servidor área, seleccione SQL Server para indicar que el servidor vinculado que es otra instancia de SQL Server. 4. En la seguridad de la página, especifique el contexto de seguridad que se utilizará cuando el original SQL Server se conecta al servidor vinculado. En un entorno de dominio en el que los usuarios se conectan mediante el uso de su información de acceso de dominio, seleccionando Ya sea mediante el contexto de seguridad actual de inicio de sesión es a menudo la mejor opción. Cuando los usuarios se conectan a la original de SQL Server mediante el uso de un SQL Server login, la mejor opción es a menudo para seleccionar Al utilizar este contexto de seguridad, y luego proporcionar las credenciales necesarias para autenticar en el servidor vinculado. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 4. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Inicio de sesión local Especifica el inicio de sesión local que se puede conectar al servidor vinculado. El inicio de sesión local puede ser un inicio de sesión utilizando la autenticación de SQL Server o un inicio de sesión de autenticación de Windows. Utilice esta lista para restringir la conexión a inicios de sesión específicos, o para permitir que algunos accesos para conectarse como un usuario diferente. Suplantar Pase el nombre de usuario y la contraseña de inicio de sesión local en el servidor vinculado. Para la autenticación de SQL Server, un usuario con el mismo nombre y contraseña debe existir en el servidor remoto. Para los inicios de sesión de Windows, el usuario debe ser un usuario válido en el servidor vinculado. Para utilizar la suplantación, la configuración debe cumplir con el requisito para la delegación. Usuario remoto Utilice el usuario remoto para asignar usuarios no definidos en inicio de sesión local. El usuario remoto debe ser un inicio de sesión de autenticación de servidor SQL en el servidor remoto. Clave de Acceso Remoto Especifique la contraseña del usuario remoto. Añadir Añadir un nuevo inicio de sesión local. Quitar Eliminación de un inicio de sesión local existente. No se hizo Especifica que la conexión no se realizará para los inicios de sesión no definidos en la lista. Se efectúen sin utilizar un contexto de seguridad Especificar que una conexión se realizará sin utilizar un contexto de seguridad para los inicios de sesión no definidos en la lista. Ya sea mediante el contexto de seguridad actual de inicio de sesión Autor: Calvache Juan Carlos 7mo - Sistemas
  • 5. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Especificar que una conexión se realizará utilizando el contexto de seguridad actual del inicio de sesión para las conexiones que no se definen en la lista. Si se conecta al servidor local mediante la autenticación de Windows, las credenciales de Windows se pueden utilizar para conectar con el servidor remoto. Si se conecta al servidor local utilizando autenticación de SQL Server, el nombre de usuario y contraseña se utiliza para conectar con el servidor remoto. En este caso un nombre de usuario con el mismo nombre y contraseña debe existir en el servidor remoto. Se establecerán usando este contexto de seguridad Especificar que una conexión se realizará utilizando el nombre de usuario y la contraseña especificados en el inicio de sesión remoto y con la contraseña de cajas para los inicios de sesión no definidos en la lista. El inicio de sesión remoto debe ser un inicio de sesión de autenticación de servidor SQL en el servidor remoto. 5. Opcionalmente, para ver o especificar opciones de servidor, haga clic en el servidor Opciones de página. Colación Compatible Afecta la ejecución de consultas distribuidas en servidores vinculados. Si esta opción se establece en true, SQL Server considera que todos los caracteres del servidor vinculado son compatibles con el servidor local, con el juego de caracteres y orden de clasificación (o el orden). Esto permite a SQL Server para enviar las comparaciones en las columnas de caracteres al proveedor. Si esta opción no está activada, SQL Server siempre evalúa las comparaciones en las columnas de caracteres a nivel local. Esta opción sólo se debe establecer si es cierto que la fuente de datos correspondiente al servidor vinculado tiene el mismo juego de caracteres y orden de clasificación que el servidor local. Acceso a datos Habilita y deshabilita un servidor vinculado para el acceso a consultas distribuidas. RPC Habilita RPC desde el servidor especificado. RPC de salida Habilita RPC en el servidor especificado. Use remote collation Determina si la intercalación de una columna remota o de un servidor local será usado. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 6. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Si es cierto, la intercalación de columnas remotas se utiliza para fuentes de datos de SQL Server y la intercalación especificada en nombre de intercalación se utiliza por falta de datos de SQL Server. Si es false, las consultas distribuidas siempre utilizará la colación por defecto del servidor local, mientras que el nombre de intercalación y la intercalación de columnas remotas se ignoran. El valor predeterminado es false. Nombre de intercalación Específica el nombre de la intercalación utilizada por el origen de datos remoto si use remote collation es true y el origen de datos no es de SQL Server origen de datos. El nombre debe ser una de las intercalaciones compatibles con SQL Server. Utilice esta opción cuando se accede a un origen de datos OLE DB que no sea de SQL Server, pero cuya colación coincide con una de las intercalaciones de SQL Server. El servidor vinculado debe permitir una sola intercalación que se utiliza para todas las columnas de ese servidor. No establezca esta opción si el servidor vinculado admite varias intercalaciones dentro de una única fuente de datos, o si la intercalación de servidor vinculado no puede ser determinado para que coincida con una de las intercalaciones de SQL Server. Tiempo de espera de conexión Tiempo de espera de valor en segundos para la conexión a un servidor vinculado. Si es 0, use el sp_configure predeterminado de tiempo de espera de consulta remota valor de opción. Tiempo de espera de consulta Tiempo de espera de valor en segundos para consultas en un servidor vinculado. Si es 0, use el sp_configure predeterminado de espera de consultas valor de opción. Activar Promoción de transacciones distribuidas Utilice esta opción para proteger las acciones de un procedimiento de servidor a servidor a través de un Coordinador de transacciones distribuidas de Microsoft (MS DTC). Cuando esta opción es TRUE, llamar a un procedimiento almacenado remoto inicia una transacción distribuida y pide la transacción con MS DTC. Para obtener más información, consulte sp_serveroption (Transact-SQL) . 6. Haga clic en Aceptar. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 7. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Para ver las opciones de proveedor  Para ver las opciones que el proveedor pone a su disposición, haga clic en Opciones de Proveedores de página. Todos los proveedores no tienen las mismas opciones disponibles. Por ejemplo, algunos tipos de datos tienen índices disponibles y otras no. Utilice este cuadro de diálogo para ayudar a SQL Server comprender las capacidades del proveedor. SQL Server instala algunos proveedores de datos comunes, sin embargo, cuando el producto de la prestación de los cambios de datos, el proveedor de SQL Server instalado por no ser compatible con todas las nuevas características. La mejor fuente de información acerca de las capacidades del producto siempre que los datos de la documentación de dicho producto. Parámetro dinámico Indica que el proveedor permite '?' parámetro sintaxis marcador para consultas con parámetros. Establezca esta opción sólo si el proveedor admite laICommandWithParameters interfaz y soporta un '?' como el marcador de parámetro. Al establecer esta opción permite a SQL Server para ejecutar consultas con parámetros en el proveedor. La capacidad de ejecutar consultas con parámetros en el proveedor puede resultar en un mejor rendimiento de determinadas consultas. Las consultas anidadas Indica que el proveedor permite que las sentencias nestedSELECT en la cláusula FROM. Al establecer esta opción permite a SQL Server delegar determinadas consultas al proveedor que requieren anidar instrucciones SELECT en la cláusula FROM. Nivel cero sólo Sólo nivel 0 interfaces OLE DB se invocan en el proveedor. Permitir inprocess SQL Server permite al proveedor para ejecutarse como un servidor en proceso. Cuando esta opción no está activada, el comportamiento predeterminado es crear una instancia del proveedor fuera del proceso de SQL Server. Instancias del proveedor fuera del proceso de SQL Server protege el proceso de SQL Server a partir de los errores en el proveedor. Cuando el proveedor se crea una instancia exterior, el proceso de SQL Server actualizaciones o inserciones referencia a columnas largas ( texto , ntext o imagen ) no están permitidos. No cambios negociados SQL Server permite actualizaciones, aunque ITransactionLocal no está disponible. Si esta opción está activada, las actualizaciones en contra del proveedor no son recuperables, porque el proveedor no admite transacciones. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 8. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Índice como ruta de acceso SQL Server intenta utilizar los índices del proveedor para recuperar los datos. De forma predeterminada, los índices sólo se utilizan para metadatos y nunca se abren No permitir el acceso ad hoc SQL Server no permite el acceso ad hoc a través de la OPENROWSET y OPENDATASOURCE contra el proveedor de OLE DB. Cuando esta opción no está activada, SQL Server también no permite el acceso ad hoc. 'Like' Soporta operador Indica que el proveedor admite consultas utilizando la palabra clave LIKE. El uso de Transact-SQL Para crear un servidor vinculado mediante Transact-SQL, utilice el sp_addlinkedserver (Transact-SQL) CREATE LOGIN (Transact-SQL) y sp_addlinkedsrvlogin (Transact-SQL) declaraciones. Para crear un servidor vinculado a otra instancia de SQL Server con Transact-SQL 1. En el Editor de consultas, escriba el siguiente comando Transact-SQL para acceder a una instancia de SQL Server denominada SRVR002 ACCTG : Transact-SQL USE [master] GO EXEC master.dbo.sp_addlinkedserver @ Server = N'SRVR002 ACCTG ', @ Srvproduct = N'SQL servidor '; GO 2. Ejecute el código siguiente para configurar el servidor vinculado para utilizar las credenciales de dominio de inicio de sesión que utiliza el servidor vinculado. Transact-SQL EXEC master.dbo.sp_addlinkedsrvlogin @ Rmtsrvname N'SRVR002 = ACCTG ', @ Locallogin = NULL, @ Useself N'True = '; GO Autor: Calvache Juan Carlos 7mo - Sistemas
  • 9. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Una vez que hemos creado un Servidor Vinculado podemos acceder repetidas veces a dicho Origen de Datos sin tener que volver a especificar los datos de conexión (sólo el nombre del Servidor Vinculado). Es más, si accedemos a dicho Origen de Datos en múltiples consultas en múltiples sitios, si en un futuro deseamos que la conexión se realice a otro Origen de Datos (ej: por motivo de una migración del mismo). PRACTICA: Linked Server a Access Para hacer el servidor a Access no se necesita crear un ODBC por la razón que el SQL-server tiene un proveedor para Access llamado “Microsoft OLE DB Provider for Analysis Services 10.0” el mismo que se utilizará para la creación del servidor. 1. Damos click derecho sobre Linked Server y nos mostrara la siguiente pantalla, la cual será configurada asi: 2. Luego le damos en OK, luego damos click derecho y hacemos un Test Connection, para comprobar que la conexión se ha realizado exitosamente. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 10. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 3. Una vez comprobada la conexión, realizamos un Select para ver si nos permite obtener datos de Access. Lo hacemos con click derecho sobre el servidor, escogemos Script Linked Server as, luego Select to. Y nos aparece automáticamente la consulta Select. La ejecutamos y obtenemos los datos. 4. Luego procedemos hacer la consulta en el motor SQL-Server vinculando la consulta de Access. Y la ejecutamos. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 11. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Linked Server a Oracle. Para hacer el servidor a Oracle no se necesita crear un ODBC por la razón que el SQL-server tiene un proveedor para Oracle llamado “Oracle Provider for OLE DB”, este se instala cuando se hace la instalación del Oracle, este se utilizará para la creación del servidor Oracle. 1. Damos click derecho sobre Linked Server y nos mostrara la siguiente pantalla, la cual será configurada asi: 2. Luego que nos aparece la ventana la configuramos de la siguiente manera: Autor: Calvache Juan Carlos 7mo - Sistemas
  • 12. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 3. Luego nos dirigimos a Security y agregamos un login, Done Local Login se refiere al usuario SQL-Server, Remote Server se refiere al usuario oracle y Remote Password es la contraseña del usuario de oracle. 4. Luego le damos en OK, luego damos click derecho y hacemos un Test Connection, para comprobar que la conexión se ha realizado exitosamente. Seguidamente hacemos un select al motor Oracle para obtener datos. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 13. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Para esta conexión he creado una tabla llamada Oracle, con el usuario System. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 14. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Comprobación: 5. Luego hacemos la consulta SQL-Server vinculando la consulta Oracle. Y la ejecutamos. Linked server Firebird Para hacer el servidor de Firebird. Instalamos el proveedor de Firebird desde SQL-Server, en este caso me he descargado el IBProvider_trial_32-64_3.13.2.14066_i, Luego de descargarse le instalamos. Seguidamente vamos a modificar el provider en el SQL-Server. 1. Click derecho sobre LCPI.IBProvider.3 y luego en propiedades Autor: Calvache Juan Carlos 7mo - Sistemas
  • 15. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 2. Luego en la ventana que nos aparece habilitamos lo siguiente: 3. Y luego le damos en OK, está configurado nuestro Provider. 4. En este caso probaremos de la segunda manera hacer el servidor por medio de código y no interfaz. Ingresaremos las siguientes líneas de código en SQL-Server 2008: declare @LINKED_SERVER_NAME varchar(max); declare @PRODUCT_NAME varchar(max); declare @IBPROVIDER varchar(max); declare @DATA_SOURCE varchar(max); declare @CN_STR varchar(max); set @LINKED_SERVER_NAME = N'FIREBIRD_SAMPLES'; set @PRODUCT_NAME = N'BDFirebird_FDB'; Autor: Calvache Juan Carlos 7mo - Sistemas
  • 16. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial set @IBPROVIDER = N'LCPI.IBProvider.3'; set @DATA_SOURCE = N'c:oltpBDFirebird.fdb'; set @CN_STR = 'truncate_char=false; support_odbc_query=true; support_square_delim_name=1; user=sysdba; password=masterkey; ctype=win1251;auto_commit = true'; /* DROP LINKED SERVER */ IF EXISTS (SELECT srv.name FROM sys.servers srv WHERE srv.server_id != 0 AND srv.name = @LINKED_SERVER_NAME) EXEC master.dbo.sp_dropserver @server=@LINKED_SERVER_NAME, @droplogins='droplogins' /* CREATE LINKED SERVER */ EXEC master.dbo.sp_addlinkedserver @server = @LINKED_SERVER_NAME, @srvproduct = @PRODUCT_NAME, @provider = @IBPROVIDER, @datasrc = @DATA_SOURCE, @provstr = @CN_STR /* set up Extended properties of the Linked Server */ EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname='data access', @optvalue='true' EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname='rpc', @optvalue='true' EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname='rpc out', @optvalue='true' EXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname='use remote collation', @optvalue='true' Autor: Calvache Juan Carlos 7mo - Sistemas
  • 17. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 5. Ejecutamos nuestro pequeño procedimiento. 6. Luego de ejecutar, nos aparece ya en la carpeta de linked server, nuestro servidor firebird. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 18. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 7. Damos click derecho en nuestro servidor firebird, y luego damos click en propiedades. 8. En la ventana que nos aparece agregamos el login como antes mencionado, en este caso, usuario SQL-Server sa, y usuario y contraseña de firebird. 9. Luego hacemos un test conection para verificar la conexion a la Base de Datos firebird. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 19. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 10. Luego procedemos hacer la consulta Select 11. Como vemos se nos realiza la consulta automáticamente, luego de ejecutamos y nos aparecerán los datos de la base de datos que se encuentra en Firebird. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 20. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 12. A continuación realizamos la consulta entre SQL-Server y Firebird. Linked server Postgres Primeramente creamos un ODBC para Postgres, Para crear el ODBC he descargado psqlodbc_09_01_0200-1, la instalación es fácil. Una vez instalado creamos el ODBC. 1. Creamos un DSN de usario , escojemos PostgreSQL ANSI Autor: Calvache Juan Carlos 7mo - Sistemas
  • 21. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 2. A continuación creamos el ODBC de la siguiente manera. 3. Luego probamos la conexión, dando click en Test. 4. Una vez probada la conexión le damos en aceptar, y nuestro ODBC esta listo. 5. A continuación creamos nuestro servidor a Postgres, lo haremos por medio de código, de la siguiente manera. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 22. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial USE[master] go EXEC master.dbo.sp_addlinkedserver @server = N'POSTGRES', @srvproduct=N'Postgres', @provider=N'MSDASQL', @datasrc=N'PostgreSQL30' go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'collation compatible', @optvalue=N'false' go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'data access', @optvalue=N'true' go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'rpc', @optvalue=N'false' go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'rpc out', @optvalue=N'false' go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'connect timeout', @optvalue=N'0' go Autor: Calvache Juan Carlos 7mo - Sistemas
  • 23. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'collation name', @optvalue=null go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'query timeout', @optvalue=N'0' go EXEC master.dbo.sp_serveroption @server=N'POSTGRES', @optname=N'use remote collation', @optvalue=N'true' go USE[master] go EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'POSTGRES', @locallogin =NULL , @useself = N'False' GO 6. Luego ejecutamos el procedimiento. 7. Efectivamente nuestro servidor esta creado, luego procederemos a la creación del login. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 24. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 8. Luego hacemos un Test Conecction para verificar la conexión. 9. A continuación haremos la consulta, pero en este caso utilizaremos un openquery. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 25. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial 10. Luego hacemos la consulta de SQL-Server 2008 vinculando o uniendo Postgres. Conclusión: Un Servidor Vinculado sirve para acceder a Orígenes de Datos OLEDB desde SQL Server (es decir, para ejecutar Consultas Distribuidas, ejecutar Procedimientos Almacenados en servidores remotos, etc). En esta práctica hemos realizado solo un Select para comprobar las conexiones y extraer datos desde otra Base de Datos a SQL-Server. Las conexiones se han comprobado y han sido exitosas al igual que la extracción de datos. Además hemos podido verificar las dos maneras de crear un servidor vinculado (Linked Server) en SQL-Server 2008. También realizamos las consultas a cada SGBD(Access, Oracle, Firebird, Postgres) desde SQL-Server 2008, select vinculados, los cuales han sido satisfactorios. Autor: Calvache Juan Carlos 7mo - Sistemas
  • 26. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial Bibliografía: http://msdn.microsoft.com/es-es/library/ff772782.aspx http://www.guillesql.es/Articulos/SQLServerFAQ_Servidor_Vinculado_OPENQUERY_Notacion_4 _Partes.aspx Autor: Calvache Juan Carlos 7mo - Sistemas