Crear un servidor vinculado a DB2 mediante el proveedor Microsoft OLE DB para DB2


Resumen


Este artículo proporciona una secuencia de comandos SQL para crear un servidor vinculado a DB2 con sp_addlinkedserver y emite unas pocas consultas para ilustrar la distribuida consulta procesamiento (DQP) mediante DB2OLEDB, el proveedor de Microsoft OLE DB para DB2. Consulte el siguiente artículo en Microsoft Knowledge Base para obtener información sobre las palabras clave utilizadas en la initstring DB2OLEDB.
218590 cómo configurar orígenes de datos para el proveedor de Microsoft OLE DB para DB2

Crear un servidor vinculado

EXEC sp_addlinkedserver
@server = 'WNW3XX',
@srvproduct = 'Microsoft OLE DB Provider for DB2',
@catalog = 'OLYMPIA',
@provider = 'DB2OLEDB',
@provstr='NetLib=SNA;NetAddr=;NetPort=;RemoteLU=OLYMPIA;LocalLU=LOCAL;ModeName=QPCSUPP;User ID=WNW3XX;Password=WNW3XX;InitCat=OLYMPIA;Default Schema=WNW3XX;PkgCol=WNW3XX;TPName=;Commit=YES;IsoLvl=NC;AccMode=;CCSID=37;PCCodePage=1252;BinAsChar=NO;Data Source=Olympia_WNW3XX'

EXEC sp_addlinkedsrvlogin 'WNW3XX', false, NULL, 'WNW3XX', 'WNW3XX'
Tenga en cuenta que:
  • Proveedor DB2OLEDB necesita ejecutarse en proc. Para habilitar a esta configuración:
    1. Inicie el Administrador de Microsoft SQL Server Enterprise.
    2. En el árbol de consola, busque el nodo servidores vinculados (en la carpeta de seguridad). Haga clic en el servidor vinculado creado anteriormente y, en el cuadro de diálogo Propiedades , haga clic en la ficha General , a continuación, haga clic en Opcionesy haga clic para activar a la opción Permitir InProcess . Se trata de la única manera de habilitar a esta opción y después se habilitó para un proveedor determinado, se utiliza la configuración para cada servidor vinculado posteriores creado con ese proveedor, incluidas las creadas con secuencias de comandos SQL de T.
  • La longitud total de la initstring de servidor vinculado debe ser no más de 278 caracteres, por lo que resulta más ventajoso utilizar los argumentos de cadena de conexión corta DB2OLEDB tal como se describe anteriormente.
  • Los servidores vinculados mediante DB2OLEDB también pueden configurarse para conectarse a través de TCP/IP, aunque la secuencia de comandos anterior se muestra cómo utilizar una conexión APPC SNA.

Muestra las consultas distribuidas

Ejemplo de selección con nombre-parte 4: LinkedServer.Catalog.Schema.Table
SELECCIONAR * DESDE WNW3XX. OLYMPIA. WNW3XX. DEPARTAMENTO

Ejemplo de pasar a través de selección mediante OPENQUERY con nombre-parte 3:
SELECCIONAR * DESDE OPENQUERY (WNW3XX, "SELECCIONAR * DE OLYMPIA. WNW3XX. EMP_ACT")

Ejemplo de pasar a través de seleccionar utilizar OPENROWSET con nombre parte 2:
SELECCIONE * FROM OPENROWSET
('DB2OLEDB', biblioteca de red = SNA; NetAddr =; NetPort =; RemoteLU = OLYMPIA; LocalLU = LOCAL; ModeName = QPCSUPP; Id. de usuario = WNW3XX; Contraseña = WNW3XX; InitCat = OLYMPIA; predeterminado esquema = WNW3XX; PkgCol = WNW3XX; TPName =; Confirmar = YES; IsoLvl = CN; Modoacc =; CCSID = 37; PCCodePage = 1252; BinAsChar = NO; origen de datos = ejemplo ',
' SELECCIONAR * DESDE WNW3XX. EMPLEADO ')

Ejemplo de una INSERCIÓN con nombre-parte 4:
INSERTAR EN WNW3XX. OLYMPIA. WNW3XX. VALORES DE DEPARTAMENTO
('E21', 'PRUEBA', NULL, 'E01')

Tenga en cuenta que para actualizar y eliminar con DQP no son posibles con el proveedor que suministró con SNA versión 4.0 Service Pack 2 y Service Pack 3 debido a la falta de compatibilidad con marcadores, pero éstos funcionan con el proveedor de SNA 4.0 Service Pack 4 y el proveedor que suministró el wit de DB2OLEDB h Host Integration Server. Para obtener más información sobre esto, consulte el artículo siguiente en Microsoft Knowledge Base:

287093 DB2OLEDB admite, UPDATE o DELETE de servidor vinculado de SQL
Ejemplo de combinación entre una tabla de SQL Server y DB2:
SELECCIONE A.EMPLOYEE_NUMBER,B.ACTNO DE CORPDATA.. EMPLOYEE_ACCOUNT, WNW3XX. OLYMPIA. WNW3XX. B EMP_ACT DONDE A.EMPLOYEE_NUMBER = B.EMPNO PEDIDO POR A.EMPLOYEE_NUMBER