sql >> データベース >  >> RDS >> Sqlserver

GeneroをSQLServerに接続する

    Generoは、EasysoftのSQL Server ODBCドライバーで使用するデータベースドライバーを提供します。これにより、SQLServerをバックエンドとして使用するGeneroプログラムを作成できます。

    1. 64ビットLinux用のSQLServerODBCドライバーをダウンロードします。 (登録が必要です。)
    2. Generoがインストールされている、またはインストールされる予定のマシンにSQLServerODBCドライバーをインストールしてライセンスを取得します。

      インストール手順については、ODBCドライバーのドキュメントを参照してください。

      マシンにunixODBCDriverManagerがインストールされている必要があります。 Easysoftディストリビューションには、Easysoft SQLServerODBCドライバーがテストされたバージョンのunixODBCドライバーマネージャーが含まれています。 Easysoftドライバセットアッププログラムには、unixODBCをインストールするオプションがあります。

    3. GeneroからアクセスするSQLServerデータベースに接続するODBCデータソースを/etc/odbc.iniに作成します。次に例を示します。
      [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. isqlを使用して新しいデータソースをテストします。例:
      cd /usr/local/easysoft/unixODBC/bin
      ./isql.sh -v MSSQL-GENERO
      

      プロンプトで「help」と入力して、テーブルのリストを表示します。終了するには、空のプロンプト行でReturnキーを押します。

      接続できない場合は、この記事とSQLServerODBCドライバーのナレッジベースを参照してください。

    5. まだ行っていない場合は、このマシンにGeneroをインストールします。

      お客様の1人から、SQL Server 2016でGeneroを使用する場合は、Genero3.00.10以降を使用する必要があるとの報告がありました。

      セットアップ中に、fglrunのデフォルトデータベースを選択するように求められます。 SQL Server 2014以前をデフォルトのデータベースとして使用する場合は、オプション[7]を選択します。 プロンプトが表示されたら。 SQL Server 2016以降を使用する場合は、[6]を選択します。 。 SQL Serverをデフォルトのデータベースとして使用したくない場合は、別のデータベースを選択してください。 Generoソースコードで使用するデータベースドライバを指定することにより、アプリケーションごとにデータベースを設定できます。
    6. SQLServerデータを取得するGeneroプログラムを作成します。
      $ 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. GeneroがSQLServerODBCドライバーをロードできるように環境を設定します。
      export LD_LIBRARY_PATH=/usr/local/easysoft/sqlserver/lib
      

      Easysoftドライバーを/usr/ localにインストールしなかった場合は、それに応じてパスを修正してください。

    8. プログラムをコンパイルして実行します:
      $ cd /opt/fourjs/gep/fgl/bin/
      $ ./fglcomp connect.4gl
      $ ./fglrun connect.42m
      Value1
      Value2
      
    9. プログラムの実行で問題が発生した場合は、FGLSQLDEBUGを設定してみてください。
      $ 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
      

    1. レール内の列タイプをより長い文字列に変更する

    2. レストラン配信データモデル

    3. SQLでコメントを追加する方法は?

    4. HAProxy接続とMySQL接続-知っておくべきこと