Genero tillhandahåller en databasdrivrutin för användning med Easysofts SQL Server ODBC-drivrutin, och detta gör att du kan skapa Genero-program som använder SQL Server som backend.
- Ladda ner SQL Server ODBC-drivrutinen för 64-bitars Linux. (Registrering krävs.)
- Installera och licensiera SQL Server ODBC-drivrutinen på maskinen där Genero är eller kommer att installeras.
För installationsinstruktioner, se dokumentationen för ODBC-drivrutinen.
Obs Du behöver unixODBC Driver Manager installerad på din maskin. Easysoft-distributionen inkluderar en version av unixODBC Driver Manager som Easysoft SQL Server ODBC-drivrutinen har testats med. Easysofts drivrutinsinstallationsprogram ger dig möjlighet att installera unixODBC.
- Skapa en ODBC-datakälla i /etc/odbc.ini som ansluter till SQL Server-databasen du vill komma åt från Genero. Till exempel:
[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
- Använd isql för att testa den nya datakällan. Till exempel:
cd /usr/local/easysoft/unixODBC/bin ./isql.sh -v MSSQL-GENERO
Vid prompten skriver du "hjälp" för att visa en lista med tabeller. För att avsluta, tryck på retur i en tom uppmaningsrad.
Om du inte kan ansluta, se den här artikeln och SQL Server ODBC Driver Knowledge Base för hjälp.
- Om du inte redan har gjort det, installera Genero på den här maskinen.
Obs En av våra kunder har rapporterat till oss att om du vill använda Genero med SQL Server 2016 måste du använda Genero 3.00.10 eller senare.
Under installationen uppmanas du att välja standarddatabasen för fglrun. Om du vill ha SQL Server 2014 eller tidigare som din standarddatabas, välj alternativet[7]
när du uppmanas. Om du vill använda SQL Server 2016 eller senare, välj[6]
. Om du inte vill använda SQL Server som standarddatabas, välj en annan databas. Du kan ställa in databasen per applikation genom att ange vilken databasdrivrutin som ska användas i din Genero-källkod. - Skapa ett Genero-program som hämtar vissa SQL Server-data:
$ 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
- Ställ in miljön så att Genero kan ladda SQL Server ODBC-drivrutinen:
export LD_LIBRARY_PATH=/usr/local/easysoft/sqlserver/lib
Om du inte installerade Easysoft-drivrutinen under /usr/local, ändra sökvägen därefter.
- Kompilera och kör ditt program:
$ cd /opt/fourjs/gep/fgl/bin/ $ ./fglcomp connect.4gl $ ./fglrun connect.42m Value1 Value2
- Om du har några problem med att köra programmet, försök ställa in 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