sql >> Database teknologi >  >> RDS >> Sqlserver

Forbind SAP IQ til SQL Server

SAP IQ (tidligere kendt som SAP Sybase IQ eller Sybase IQ) er en højtydende relationsdatabase designet specifikt til data warehousing. Dette produkt på tværs af platforme kører på flere populære Unix-, Linux- og Windows-platforme.

SAP IQ kan integrere data fra forskellige kilder, ikke kun IQ-databaser, men andre databaser i Adaptive Server-familien, såvel som ikke-Sybase-databaser og flade filer.

Denne blog viser, hvordan du får adgang til SQL Server-data fra SAP IQ, der kører på Windows-platformen.

SQL-servertrin

  1. I SQL Server Management Studio skal du oprette en eksempeltabel til at indeholde de data, du vil hente fra SAP IQ. For eksempel:
    CREATE DATABASE mydb
    USE mydb
    CREATE TABLE Persons (
        PersonID int,
        LastName varchar(255),
        FirstName varchar(255),
        Address varchar(255),
        City varchar(255)
    );
    
    INSERT INTO Persons VALUES(1,'Name', 'My', 'MyAddress', 'MyCity')	    
    	
  2. Download SQL Server ODBC-driveren til din Windows-platform. (Registrering påkrævet.)
  3. Installer og licenser SQL Server ODBC-driveren på den Windows-maskine, hvor SAP IQ er installeret.

    For installationsinstruktioner, se SQL Server ODBC-driverdokumentationen.

  4. I ODBC Data Source Administrator på din SAP IQ-maskine skal du konfigurere en System ODBC-datakilde, der opretter forbindelse til din SQL Server-instans. I datakilden skal du angive den database, der indeholder de data, du vil arbejde med i SAP IQ.

    En ODBC-datakilde gemmer forbindelsesdetaljerne for måldatabasen (f.eks. SQL Server) og den ODBC-driver, der kræves for at oprette forbindelse til den (f.eks. SQL Server ODBC-driveren).

    Du konfigurerer ODBC-datakilder i ODBC Administrator, som er inkluderet i Windows. Der er to versioner af ODBC Administrator inkluderet i Windows, en er 32-bit og en er 64-bit. Da SAP IQ er et 64-bit program, skal du bruge 64-bit versionen af ​​ODBC Administrator. For at starte 64-bit ODBC Administrator skal du skrive:

    i dialogboksen Kør i Windows
    odbcad32.exe

    For instruktioner om konfiguration af datakilder, se SQL Server ODBC-driverdokumentationen.

  5. SAP IQ-trin

    1. Opsæt dit SAP IQ-miljø ved at indstille miljøvariablerne i SAPIQDIR\SYBASE.bat og SAPIQDIR\SYBASE.ENV .
    2. Tilføj mappen, hvor start_iq er placeret, til din PATH, så prøvedatabaseoprettelsesscriptet kan køre denne kommando. For eksempel:
      set PATH=C:\SAPIQ\IQ-16_1\Bin64;%PATH%
    3. Fortæl SAO IQ, hvor logfiler skal skrives til prøvedatabasen, ved at angive en logfil-mappeplacering. For eksempel:
      set IQ16LOGDIR = C:\Temp
    4. Opret prøvedatabasen ved at køre mkiqdemo.bat . Du skal indstille et databasebrugernavn og en adgangskode ved at inkludere -dba og -pwd argumenter. For eksempel:
      cd C:\ProgramData\SAPIQ\demo
      mkiqdemo.bat -dba myuser -pwd mypassword
    5. Start SAP IQ-serveren:
      start_iq @iqdemo.cfg iqdemo.db
    6. Brug dbisql , SAP IQ interaktivt SQL-værktøj, for at oprette forbindelse til prøvedatabasen. For eksempel:
      dbisql -nogui -c "UID=myuser;PWD=mypassword;DATABASE=iqdemo"
    7. Opret en fjernserver, der bruger SQL Server ODBC-driverdatakilden, du oprettede tidligere, til at oprette forbindelse til SQL Server.

      Du skal angive dit Windows- eller SQL Server-login i fjernserverforbindelsesstrengen. Ellers sender SAP IQ dit eksempeldatabasebrugernavn og -adgangskode til SQL Server ODBC-driveren.

      For eksempel:

      CREATE SERVER easysoft
      CLASS 'ODBC'
      USING 'DSN=MYDSN;UID=mydomain\mywindowsuser;PWD=mywindowspassword'
    8. Opret en lokal SAP IQ-tabel, der gør dig i stand til at arbejde med dine eksterne SQL Server-data. Brug et firedelt navn til at specificere fjerntabellen, dvs.:
      remoteserver.database.schema.object

      For eksempel SQL Server-tabellen, vi oprettede tidligere, CREATE EXISTING TABLE sætning ville være:

      CREATE EXISTING TABLE Persons(
          PersonID int,
          LastName varchar(255),
          FirstName varchar(255),
          Address varchar(255),City varchar(255)) AT 'easysoft.mydb.dbo.Persons'
    9. Tjek, at du kan hente dine eksterne SQL Server-data.
      select * from Persons;

  1. Hvilken kolonnetype/længde skal jeg bruge til at gemme en Bcrypt hashed adgangskode i en database?

  2. Tildel dynamisk filnavn til excel-forbindelsesstreng

  3. Hvordan opretter man en SQL Server-funktion for at forbinde flere rækker fra en underforespørgsel til et enkelt afgrænset felt?

  4. Uordnede resultater i SQL