Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Genero mit SQL Server verbinden

Genero stellt einen Datenbanktreiber zur Verwendung mit dem SQL Server ODBC-Treiber von Easysoft bereit, der es Ihnen ermöglicht, Genero-Programme zu erstellen, die SQL Server als Backend verwenden.

  1. Laden Sie den SQL Server ODBC-Treiber für 64-Bit-Linux herunter. (Anmeldung erforderlich.)
  2. Installieren und lizenzieren Sie den SQL Server ODBC-Treiber auf dem Rechner, auf dem Genero installiert ist oder installiert werden soll.

    Installationsanweisungen finden Sie in der ODBC-Treiberdokumentation.

    Hinweis Sie müssen den unixODBC-Treibermanager auf Ihrem Computer installieren. Die Easysoft-Distribution enthält eine Version des unixODBC-Treiber-Managers, mit dem der Easysoft SQL Server-ODBC-Treiber getestet wurde. Das Setup-Programm des Easysoft-Treibers bietet Ihnen die Möglichkeit, unixODBC zu installieren.

  3. Erstellen Sie eine ODBC-Datenquelle in /etc/odbc.ini, die eine Verbindung zu der SQL Server-Datenbank herstellt, auf die Sie von Genero aus zugreifen möchten. Beispiel:
    [MSSQL-GENERO]
    Driver          = Easysoft ODBC-SQL Server
    Server          = my_machine\SQLEXPRESS
    User            = my_domain\my_user
    Password        = my_password
    # If the database you want to connect to is the default
    # for the SQL Server login, omit this attribute
    Database        = Northwind
    
  4. Verwenden Sie isql, um die neue Datenquelle zu testen. Zum Beispiel:
    cd /usr/local/easysoft/unixODBC/bin
    ./isql.sh -v MSSQL-GENERO
    

    Geben Sie an der Eingabeaufforderung „help“ ein, um eine Liste mit Tabellen anzuzeigen. Drücken Sie zum Beenden die Eingabetaste in einer leeren Eingabeaufforderungszeile.

    Wenn Sie keine Verbindung herstellen können, lesen Sie diesen Artikel und die Knowledge Base für SQL Server-ODBC-Treiber, um Unterstützung zu erhalten.

  5. Wenn Sie dies noch nicht getan haben, installieren Sie Genero auf diesem Computer.

    Hinweis Einer unserer Kunden hat uns mitgeteilt, dass Sie Genero 3.00.10 oder höher verwenden müssen, wenn Sie Genero mit SQL Server 2016 verwenden möchten.

    Während des Setups werden Sie aufgefordert, die Standarddatenbank für fglrun auszuwählen. Wenn Sie SQL Server 2014 oder früher als Standarddatenbank verwenden möchten, wählen Sie die Option [7] wenn Sie dazu aufgefordert werden. Wenn Sie SQL Server 2016 oder höher verwenden möchten, wählen Sie [6] . Wenn Sie SQL Server nicht als Standarddatenbank verwenden möchten, wählen Sie eine andere Datenbank aus. Sie können die Datenbank pro Anwendung festlegen, indem Sie den zu verwendenden Datenbanktreiber in Ihrem Genero-Quellcode angeben.
  6. Erstellen Sie ein Genero-Programm, das einige SQL Server-Daten abruft:
    $ more connect.4gl
    MAIN
      DEFINE varchar_col VARCHAR(100)
      # You can omit +driver... if you dbmesm_1 is the default driver in FGLPROFILE.
      CONNECT TO "MSSQL-GENERO+driver='dbmesm_1'"
      DECLARE xx CURSOR FOR SELECT * FROM MyVarcharTable
      FOREACH xx INTO varchar_col
        DISPLAY varchar_col CLIPPED
      END FOREACH
    END MAIN
    
  7. Stellen Sie die Umgebung so ein, dass Genero den SQL Server ODBC-Treiber laden kann:
    export LD_LIBRARY_PATH=/usr/local/easysoft/sqlserver/lib
    

    Wenn Sie den Easysoft-Treiber nicht unter /usr/local installiert haben, ändern Sie den Pfad entsprechend.

  8. Kompilieren Sie Ihr Programm und führen Sie es aus:
    $ cd /opt/fourjs/gep/fgl/bin/
    $ ./fglcomp connect.4gl
    $ ./fglrun connect.42m
    Value1
    Value2
    
  9. Wenn beim Ausführen des Programms Probleme auftreten, versuchen Sie, FGLSQLDEBUG einzustellen:
    $ export FGLSQLDEBUG=3
    $ ./fglrun connect.42m
    SQL: CONNECT
     | 4gl source      : connect.4gl line=3
     | loading driver  : [/opt/fourjs/gep/fgl/dbdrivers/dbmesm_1]
     | Dynamic linker error: [libessqlsrv.so: cannot open shared object file: No such file or directory]...
     | loading driver  : [/opt/fourjs/gep/fgl/dbdrivers/dbmesm_1]
     | Dynamic linker error: [libessqlsrv.so: cannot open shared object file: No such file or directory]...
    Program stopped at 'connect.4gl', line number 3.
    SQL statement error number -6366 (0).
    Could not load database driver dbmesm_1. Set FGLSQLDEBUG to get more details.
    $ export LD_LIBRARY_PATH=/usr/local/easysoft/sqlserver/lib
    $ unset FGLSQLDEBUG
    $ ./fglrun connect.42m
    Value1
    Value2