Universidad Técnica de Ambato        Facultad de Ingeniería en Sistemas,              Electrónica e Industrial     CARRERA...
UNIVERSIDAD TÉCNICA DE AMBATO                    Facultada de Ingeniería en Sistemas, Electrónica e IndustrialObjetivos:  ...
UNIVERSIDAD TÉCNICA DE AMBATO                  Facultada de Ingeniería en Sistemas, Electrónica e Industrial       Especif...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial       Inicio d...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial       Especifi...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial       Si es ci...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialPara ver las op...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial      Índice co...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialUna vez que hem...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial3. Una vez comp...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial               ...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial3. Luego nos di...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialPara esta conex...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialComprobación:5....
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial2. Luego en la ...
UNIVERSIDAD TÉCNICA DE AMBATO                  Facultada de Ingeniería en Sistemas, Electrónica e Industrialset @IBPROVIDE...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial5. Ejecutamos n...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial7. Damos click ...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial10. Luego proce...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial12. A continuac...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial2. A continuaci...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialUSE[master]goEX...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialEXEC master.dbo...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial8. Luego hacemo...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e Industrial10. Luego hacem...
UNIVERSIDAD TÉCNICA DE AMBATO                 Facultada de Ingeniería en Sistemas, Electrónica e IndustrialBibliografía:ht...
Upcoming SlideShare
Loading in …5
×

Linked server a acces, oracle, firebird, postgres

1,839 views

Published on

Les dejo un pequeño tutorial de linked server a varios SGBDs (Oracle, Access, Firebird y Postgres)

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,839
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Linked server a acces, oracle, firebird, postgres

  1. 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. 2. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialObjetivos:  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 2008En este informe se muestra cómo crear un servidor vinculado y tener acceso a los datos desdeotra instancia de SQL Server mediante SQL Server Management Studio. La creación de unservidor vinculado permite trabajar con datos de varios orígenes. El servidor vinculado nonecesita 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ígenesde datos OLE DB. Después de crear un servidor vinculado, las consultas distribuidas se puedenejecutar en este servidor. Las consultas pueden unir tablas de varios orígenes de datos. Si elservidor vinculado se define como instancia de SQL Server, se pueden ejecutar procedimientosalmacenados remotos.Se puede utilizar cualquiera de los siguientes:  SQL Server Management Studio  Transact-SQL El uso de SQL Server Management StudioPara crear un servidor vinculado a otra instancia de SQL Server mediante SQL ServerManagement 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 datosAutor: Calvache Juan Carlos 7mo - Sistemas
  3. 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. 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ónAutor: Calvache Juan Carlos 7mo - Sistemas
  5. 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. 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. 7. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialPara 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. 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-SQLPara 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 = NSRVR002 ACCTG , @ Srvproduct = NSQL 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 NSRVR002 = ACCTG , @ Locallogin = NULL, @ Useself NTrue = ; GOAutor: Calvache Juan Carlos 7mo - Sistemas
  9. 9. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialUna vez que hemos creado un Servidor Vinculado podemos acceder repetidasveces a dicho Origen de Datos sin tener que volver a especificar los datos deconexión (sólo el nombre del Servidor Vinculado). Es más, si accedemos a dichoOrigen de Datos en múltiples consultas en múltiples sitios, si en un futurodeseamos que la conexión se realice a otro Origen de Datos (ej: por motivo deuna migración del mismo).PRACTICA: Linked Server a AccessPara hacer el servidor a Access no se necesita crear un ODBC por la razón que el SQL-servertiene 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. 10. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial3. 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. 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-servertiene un proveedor para Oracle llamado “Oracle Provider for OLE DB”, este se instala cuando sehace 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. 12. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial3. 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. 13. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialPara esta conexión he creado una tabla llamada Oracle, con el usuario System.Autor: Calvache Juan Carlos 7mo - Sistemas
  14. 14. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialComprobación:5. Luego hacemos la consulta SQL-Server vinculando la consulta Oracle. Y la ejecutamos. Linked server FirebirdPara hacer el servidor de Firebird. Instalamos el proveedor de Firebird desde SQL-Server, eneste caso me he descargado el IBProvider_trial_32-64_3.13.2.14066_i, Luego de descargarse leinstalamos. Seguidamente vamos a modificar el provider en el SQL-Server.1. Click derecho sobre LCPI.IBProvider.3 y luego en propiedadesAutor: Calvache Juan Carlos 7mo - Sistemas
  15. 15. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial2. 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 = NFIREBIRD_SAMPLES;set @PRODUCT_NAME = NBDFirebird_FDB;Autor: Calvache Juan Carlos 7mo - Sistemas
  16. 16. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrialset @IBPROVIDER = NLCPI.IBProvider.3;set @DATA_SOURCE = Nc: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=trueEXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname=rpc, @optvalue=trueEXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname=rpc out, @optvalue=trueEXEC master.dbo.sp_serveroption @server=@LINKED_SERVER_NAME, @optname=use remote collation, @optvalue=trueAutor: Calvache Juan Carlos 7mo - Sistemas
  17. 17. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial5. 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. 18. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial7. 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. 19. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial10. Luego procedemos hacer la consulta Select11. 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. 20. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial12. A continuación realizamos la consulta entre SQL-Server y Firebird. Linked server PostgresPrimeramente creamos un ODBC para Postgres, Para crear el ODBC he descargadopsqlodbc_09_01_0200-1, la instalación es fácil. Una vez instalado creamos el ODBC.1. Creamos un DSN de usario , escojemos PostgreSQL ANSIAutor: Calvache Juan Carlos 7mo - Sistemas
  21. 21. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial2. 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. 22. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialUSE[master]goEXEC master.dbo.sp_addlinkedserver @server = NPOSTGRES, @srvproduct=NPostgres,@provider=NMSDASQL, @datasrc=NPostgreSQL30goEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Ncollation compatible,@optvalue=NfalsegoEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Ndata access,@optvalue=NtruegoEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Nrpc,@optvalue=NfalsegoEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Nrpc out,@optvalue=NfalsegoEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Nconnect timeout,@optvalue=N0goAutor: Calvache Juan Carlos 7mo - Sistemas
  23. 23. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Ncollation name,@optvalue=nullgoEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Nquery timeout,@optvalue=N0goEXEC master.dbo.sp_serveroption @server=NPOSTGRES, @optname=Nuse remote collation,@optvalue=NtruegoUSE[master]goEXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = NPOSTGRES, @locallogin =NULL ,@useself = NFalseGO6. 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. 24. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial8. 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. 25. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e Industrial10. 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 (esdecir, para ejecutar Consultas Distribuidas, ejecutar Procedimientos Almacenados en servidoresremotos, etc).En esta práctica hemos realizado solo un Select para comprobar las conexiones y extraer datosdesde otra Base de Datos a SQL-Server. Las conexiones se han comprobado y han sidoexitosas 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. 26. UNIVERSIDAD TÉCNICA DE AMBATO Facultada de Ingeniería en Sistemas, Electrónica e IndustrialBibliografía:http://msdn.microsoft.com/es-es/library/ff772782.aspxhttp://www.guillesql.es/Articulos/SQLServerFAQ_Servidor_Vinculado_OPENQUERY_Notacion_4_Partes.aspxAutor: Calvache Juan Carlos 7mo - Sistemas

×