Dostawca OLE DB dla DB2

Microsoft OLE DB Provider dla DB2, rozpowszechniane z Microsoft Host Integration Server umożliwia SQL Server rozproszonych kwerendy do kwerendy danych w bazach danych DB2.

Ostrzeżenie

Aby uzyskać informacje dotyczące instalowania i konfigurowania dostawca OLE DB zobacz dokumentację dostarczoną z dostawcą.

Aby utworzyć serwer połączony bazy danych DB2

  1. Zainstaluj oprogramowanie Host Integration Server klient na komputerze, na którym jest uruchomione wystąpienie SQL Server i wybierz opcje instalacji dostawcy OLE DB dla DB2.

  2. Określić połączenie ciąg dostawcy OLE DB dla DB2 wymaga dostępu do źródło danych DB2 chcesz wykonać kwerendę.Najlepszym sposobem określenia połączenia ciąg jest utworzenie pliku połączenia danych za pomocą aplikacji hosta Integration Server OLE DB źródła danych.Aby uzyskać więcej informacji, zobacz Microsoft dokumentacji Host Integration Server.

  3. Wykonanie sp_addlinkedserver do tworzenia serwer połączony, określając DB2OLEDB jako provider_name, nazwa katalogu DB2, zawierającą dane, których chcesz uzyskać dostęp jako catalogi połączenia ciąg z kroku 2 jako provider_string.

    Poniższy przykład pokazuje sposób używania sp_addlinkedserver do utworzenia definicji serwer połączony, który uzyskuje dostęp do bazy danych DB2:

    EXEC sp_addlinkedserver @server = 'DB2SRV',
       @srvproduct = 'Microsoft OLE DB Provider for DB2',
       @catalog = 'SEATTLE',
       @provider = 'DB2OLEDB',
       @provstr =
         'NetLib=SNA;NetAddr=;NetPort=;RemoteLU=SEATTLE;LocalLU=LOCAL;
          ModeName=QPCSUPP;InitCat=SEATTLE;
          Default Schema=WNW3XX;PkgCol=WNW3XX;TPName=;Commit=YES;
          IsoLvl=NC;AccMode=;CCSID=37;PCCodePage=1252;BinAsChar=NO;
          Data Source=Seattle_WNW3XX'
    
  4. Wykonanie sp_addlinkedsrvlogin do tworzenia mapowań logowania z SQL Server logowania do logowania DB2.

    Poniższy przykład mapuje SQL Server logowania SQLJoe logowania DB2 DB2Joe:

    EXEC sp_addlinkedsrvlogin 'DB2SRV', false, 'SQLJoe', 'DB2Joe', 'x894jd03?'
    

    Ostrzeżenie

    Hasła będą przesyłane niezaszyfrowane.Hasła mogą być widoczne w definicji źródło danych i skrypty zapisane na dysku, kopie zapasowe i plików dziennika.Nigdy nie używaj hasła administratora w tego rodzaju połączenia.Skontaktuj się z administratorem sieci dla określonego środowiska wskazówki dotyczące zabezpieczeń.

Po zakończeniu poprzednich kroków, można użyć nazwy serwer połączony DB2SRV jako nazwa serwera w nazwach czteroczęściowym i jako linked_server w OPENQUERY funkcja.Na przykład:

SELECT *
FROM DB2SRV.SEATTLE.WNW3XX.DEPARTMENT

Or

SELECT *
FROM OPENQUERY(DB2SRV, 'SELECT * FROM SEATTLE.WNW3XX.EMP_ACT')

Gdy kwerendami rozproszonymi w źródłach danych DB2 obejmują porównania wartości NULL, ISNULL lub nie jest NULL zamiast użyć operatorów porównania, takich jak równości (=), większa niż (>), lub mniej niż (< ).Ponadto instrukcji INSERT należy podać wartości dla wszystkich kolumn w tabela, nawet jeśli niektóre kolumny w tabela może być NULL lub wartości domyślne.