Está en la página 1de 10

Inicio Categorías Sobre el Sitio Registrarse Login Follow on Twitter

¿Buscas algo? BUSCAR

Configurar Linked Server con SQL Server y 12 DICIEMBRE


Firebird 2009
12 DICIEMBRE
Buscar Con Google
2009

View comments

Por GeekZero
Like 2 1 Tw eet 0
Siguenos!
Short URL
Un Servidor Vinculado sirve para que el motor de base de datos (en
este caso SQL Server) pueda tener acceso a otra BD para hacer
consultas distribuidas, ejecutar Stored Procedures, entre otros, digamos BASES DE
DATOS
de un modo “transaparente” ya sea del mismo proveedor o no.
FIREBIRD
Para lograr esto necesitamos un proveedor de datos OLEDB y definir su
cadena de conexión, a la par de asignarle un nombre lógico, el cual será MSSQL

usado para su invocación directa. Una vez definido esto podemos


utilizarlo de manera abstracta para conectarnos a otras fuentes sin

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
utilizarlo de manera abstracta para conectarnos a otras fuentes sin
necesidad de volver a escribir toda la cadena de conexión. Crear esto con
otro motor o instancia de SQL Server es relativamente sencillo, por lo
tanto me centraré más bien en hacerlo con el motor de otro fabricante,
en este caso Firebird, el cual fue el que más problemas me dió, con
MySQL y PostgreSQL incluso fue más sencillo.

Oficialmente Microsoft da soporte para crear Linked Servers contra Email:


SQL Server y Oracle, mientras que al resto deja de lado, aunque eso
no quiere decir que no sean funcionales. En mis pruebas utilice varios Rev i sa tu c ar peta Spam si no te l l ega el c or r eo

proveedores OLEDB para Firebird de distintos fabricantes, entre libres y Suscribirme, es gratis!
de paga, pero tan sólo una funcionó correctamente, cumpliendo
completamente con los requisitos OLEDB, es una lástima realmente
tener que presentarlo con una versión de paga, aunque si queremos Categorías
probarlo podemos hacerlo por 30 días con IBProvider.
Elegir categoría

Una vez instalado el driver necesario, abrimos el Microsoft SQL


Server Management Studio, nos logueamos, y en el explorador de
Histórico
objetos del IDE expandimos Objetos del Servidor, aqui veremos todos
los Servidores Vinculados que creemos, para ver la lista de Proveedores Elegir mes
podemos expandir la correspondiente Lista.

Etiquetas

Android Apache ASP.net


Bases de Datos C#
.Net CSS Delphi Desktop Eclipse
Encriptado Ficheros Firebird
GNU/Linux Google Ha r dw a r e
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
HTML IDE IIS Interfaz de Usuario
Internet Java JavaScript
Microsoft Misceláneas Mov il

MsSQL MySQL
Optimizacion Oracle PHP
Ahora hacemos click secundario sobre la opcion Servidores Vinculados, PostgreSQL Redes Reportes
elegimos Nuevo Servidor Vinculado, nos aparecera la siguiente Seguridad Servidores SQL
ventana, en donde configuramos de la siguiente manera: Transact-SQL
Subv ersion
Tutoriales VB .Net
1 Servidor Vinculado: FIREBIRD
2 V ir t u a liza cion Visual Studio
3
4
Tipo de Servidor: Otro Origen de Datos
Web Web Service Windows
5 Proveedor: LCPI OLE DB Provider for InterBase [v3] [RC4]
6 WP Cumulus Flash tag cloud by Roy
7 Nombre del Producto: LCPI OLE DB Provider for InterBase [v3] [RC4]
8 Tanck and Luke Morton requires Flash
9 Cadena de Proveedor: ado_exec_sp=True; auto_commit=True; auto_commit_dll=1; bicursor=True; ctype=none;
Play er 9 data source=DB; dbclient_library=
or better.

Ultimos Comentados

Loloto en Compilación
condicional en dotNet

Francisco en Env iar Email


con Gmail por SMTP y C#
incluy endo adjunto

pepinocom en Un ejemplo

sencillo y entendible de LINQ con

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
C#

pepinocom en Un ejemplo
sencillo y entendible de LINQ con
C#
Antes de Confirmar,
debemos modificar Geancarlos en Habilitar e
algunas inhabilitar usuarios en SQL Serv er
opciones, RPC
(Remote Bill Gates en Habilitar e
Procedure Call) inhabilitar usuarios en SQL Serv er
para poder ejecutar
Stored Procedures Stev e Jobs en Habilitar e
en los inhabilitar usuarios en SQL Serv er

Bill Gates en Habilitar e


inhabilitar usuarios en SQL Serv er

Servidores Vinculados, y Salida RPC para que estos en casos de


devolver valores los podamos capturar. Punto a considera, si no vamos a Omar en Como programar

ejecutar SP ni SQL dinámico, deberíamos dejar deshabilitada esta en n-Capas con C# – SQL Serv er
opción, ya que deja abierta una punto de seguridad. (Parte 2)

En la ayuda de SQL Server (los Libros en Pantalla – Book On Line), Gaby en Como ejecutar
puede encontrarse un mayor detalle de todas las opciones de SQL dinámico en My SQL
configuración de los Servidores Vinculados.

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Necesariamente debemos configurar Ad Hoc Distributed Querys, si
no lo hacemos, ni siquiera los usuarios administradores o pertenecientes
al grupo SYSADMIN no podrán acceder al origen de datos. El error
que devolvería sería el siguiente:

1 Mens. 15281, Nivel 16, Estado 1, Línea 1 SQL Server bloqueó el acceso a STATEMENT 'OpenRowset/OpenDatasource' del componente 'Ad Hoc Dis
2
3 Msg 15281, Level 16, State 1, Line 1 SQL Server blocked access to STATEMENT 'OpenRowset/OpenDatasource' of component 'Ad Hoc Distributed

Esto lo habilitamos así:

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
1 EXEC sp_configure 'show advanced options', 1
2 GO
3 RECONFIGURE
4 GO
5 EXEC sp_configure 'Ad Hoc Distributed Queries', 1
6 GO
7 RECONFIGURE
8 GO

De este modo ya tenemos configurado nuestro servidor vinculado y


podemos utilizarlo como los siguientes ejemplos:

1 -- query directo
2 SELECT * FROM FIREBIRD...PERSONAL
3
4 -- seleccionar a partir del Result Set de un Stored Procedure
5 EXEC FIREBIRD...NOM_SLC_CONTENIDO_EMAIL
6
7 -- Ejecutar Un SP sin devolucion de datos
8 EXECUTE FIREBIRD...NOM_INS_REPOSITORIO_H 5,'2009-12-04 12:32:33','B','VINCULADO'

Ahora bien, si no deseamos hacer esto de modo gráfico, podemos utilizar


este script que hace lo mismo:

1 /****** Objeto: LinkedServer [FIREBIRD] Fecha de la secuencia de comandos: 04/24/2009 17:23:54 ******/
2 EXEC master.dbo.sp_addlinkedserver @server = N'FIREBIRD', @srvproduct=N'LCPI OLE DB Provider for InterBase', @provider=N'LCPI.IBProvide
3 /* For security reasons the linked server remote logins password is changed with ######## */
4 EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'FIREBIRD',@useself=N'False',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
5
6 GO
7 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'collation compatible', @optvalue=N'false'
8 GO
9 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'data access', @optvalue=N'true'
10 GO
11 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'dist', @optvalue=N'false'
12 GO
13 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'pub', @optvalue=N'false'
14 GO
15 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'rpc', @optvalue=N'true'
16 GO
17 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'rpc out', @optvalue=N'true'
18 GO
19 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'sub', @optvalue=N'false'
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
19 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'sub', @optvalue=N'false'
20 GO
21 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'connect timeout', @optvalue=N'0'
22 GO
23 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'collation name', @optvalue=null
24 GO
25 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'lazy schema validation', @optvalue=N'false'
26 GO
27 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'query timeout', @optvalue=N'0'
28 GO
29 EXEC master.dbo.sp_serveroption @server=N'FIREBIRD', @optname=N'use remote collation', @optvalue=N'true'

22

You may also like:

PASAR SOLUCIONAR
FILAS A ERROR DE
COLUMNASINSTALACIÓN
CON PIVOT
DE
EN SQL LENGUAJE
Pasar filas a Solucionar error de Diferencias entre
columnas con Pivot Instalación de Indices Clustered y
en SQL Server Lenguaje de SQL Non-Clustered en
Server 2008 R2 SQL Server

CREAR GUARDARROCK IN RIO


HOTKEYSLOG
EN EN EL
2011 EN
C# REGISTROBRASIL |
[WINFORMS]
DE BANDAS
EVENTOSTENTATIVAS Y
Crear Hotkeys en C# Guardar log en el Rock In Rio 2011 en
[WINFORMS] registro de eventos de Brasil | Bandas
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
[WINFORMS] registro de eventos de Brasil | Bandas
Windows con C#.Net tentativas y
Confirmadas

Comentarios desde Facebook:


Like 2 people like this. Sign Up to see w hat your friends like.

Agrega un comentario...

Comentar con...

Plug-in social de Facebook

Deja
View comments tu
Comentario

GuxAlexander 2 4 FEBRERO 2 0 1 1 A T 0 0 :2 8 #

La v erdad el contenido es m uy bueno. Pude reducir el trabajo con algunos usp’s desde m i equipo
local

RESPON DER

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Trackbacks/Pingbacks
1. Configurar Linked Server desde SQL Server a Oracle | DevTroce.com - 17
diciem br e 2 0 1 2

[...] atrás vimos como configurar los servidores vinculados desde SQL Server con MySQL y
Firebird hoy nos toca hacerlo con [...]

2. Configurar Servidor Vinculado en SQL Server con MySQL | DevTroce.com - 13


a g ost o 2 0 1 0

[...] = 'compact';ShareEl año pasado habíamos visto como crear un servidor vinculado en
SQL Server con Firebird, en ésta oportunidad veremos como hacerlo con MySQL, son muy
parecidos los pasos a seguir, pero [...]

Responder
Y our Name Y our Email Y our URL

B i U del Code

NOT IFICA RME A MI EMA IL SI HA Y NUEV OS COMENT A RIOS


open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Introduzca el texto

Env iar Com entario

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com

También podría gustarte