sql >> Base de Datos >  >> RDS >> Sqlserver

Conexión de Delphi en Linux a SQL Server

RAD Studio le permite crear una aplicación Delphi para plataformas Windows y Linux. Puede, por ejemplo, crear una aplicación ODBC que utilice un controlador ODBC de Microsoft en Windows y un controlador ODBC de Easysoft en Linux. En el siguiente tutorial, que describe cómo crear una aplicación de consola para Linux que recupera datos de SQL Server, los componentes son:

Windows Machine
---------------
RAD Studio

Linux Machine
-------------
Platform Assistant Server
Delphi Application
unixODBC Driver Manager
SQL Server ODBC Driver

Windows Machine
---------------
SQL Server
program SQLServer;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils, FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Error,
  FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def, FireDAC.Stan.Pool,
  FireDAC.Stan.Async, FireDAC.Phys, FireDAC.Phys.ODBC, FireDAC.Phys.ODBCDef,
  FireDAC.DApt, Data.DB, FireDAC.Comp.Client, FireDAC.ConsoleUI.Wait;

var
    RHConnection: TFDConnection;
    RHQuery: TFDQuery;
    sValue: String;

begin
  try
    RHConnection:=TFDConnection.Create(nil);
    RHConnection.Params.Add('DriverID=ODBC');
    RHConnection.Params.Add('DataSource=SQLSERVER_SAMPLE');
    RHConnection.Connected:=true;

    sValue := RHConnection.ExecSQLScalar('select ''SQL Server from Linux'' as test_col');
    Writeln(sValue);

    ReadLn;
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
  1. Descargue el controlador ODBC de SQL Server para plataformas Linux de 64 bits. (Es necesario registrarse).
  2. Instale y licencie el controlador ODBC de SQL Server en la máquina donde está o estará instalado Platform Assistant (servidor PA).

    Para obtener instrucciones de instalación, consulte la documentación del controlador ODBC.

    Nota Necesita el administrador de controladores unixODBC instalado en su máquina. La distribución de Easysoft incluye una versión de unixODBC Driver Manager con la que se ha probado el controlador ODBC de Easysoft SQL Server. El programa de instalación del controlador Easysoft le ofrece la opción de instalar unixODBC.

  3. Cree una fuente de datos ODBC en /etc/odbc.ini que se conecte a la base de datos de SQL Server a la que desea acceder desde Delphi. Por ejemplo:
    [SQLSERVER_SAMPLE]
    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. Utilice isql para probar la nueva fuente de datos. Por ejemplo:
    cd /usr/local/easysoft/unixODBC/bin
    ./isql.sh -v SQLSERVER_SAMPLE
    

    Cuando se le solicite, escriba "ayuda" para mostrar una lista de tablas. Para salir, presione regresar en una línea de aviso vacía.

    Si no puede conectarse, consulte este artículo y la base de conocimientos del controlador ODBC de SQL Server para obtener ayuda.

  1. Si aún no lo ha hecho, instale el servidor PA en la máquina donde instaló el controlador ODBC de SQL Server.
  2. Configure el entorno en esta máquina para que su programa Delphi pueda cargar el controlador ODBC de SQL Server. Por ejemplo:
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/easysoft/sqlserver:/usr/local/easysoft/lib:
    /usr/local/easysoft/unixODBC/lib
    export $LD_LIBRARY_PATH
    

    Inicie el servidor PA. Por ejemplo:

    cd ~/PAServer-19.0
    ./paserver
    

    Si no instaló el Administrador de controladores unixODBC que se incluye en la distribución del controlador ODBC de SQL Server, omita /usr/local/easysoft/unixODBC/lib del valor de la variable de entorno.

  3. En RAD Studio, cree una nueva aplicación de consola Delphi.
  4. Establezca que la plataforma de destino para la aplicación sea Linux de 64 bits.
  5. Edite las propiedades del perfil de su plataforma de destino para especificar los detalles de su servidor PA.
  6. Inserte el código que se muestra al comienzo de este tutorial en la aplicación.
  7. Ejecute la aplicación.