Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Свързване на Delphi на Linux към SQL Server

RAD Studio ви позволява да създадете приложение Delphi както за Windows, така и за Linux платформи. Можете например да създадете ODBC приложение, което използва ODBC драйвер на Microsoft на Windows и Easysoft ODBC драйвер на Linux. В следващия урок, който описва как да създадете конзолно приложение за Linux, което извлича данни от SQL Server, компонентите са:

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. Изтеглете ODBC драйвера на SQL Server за 64-битови Linux платформи. (Необходима е регистрация.)
  2. Инсталирайте и лицензирайте ODBC драйвера на SQL Server на машината, където е или ще бъде инсталиран Платформен асистент (PA сървър).

    За инструкции за инсталиране вижте документацията на ODBC драйвера.

    Забележка Имате нужда от unixODBC Driver Manager инсталиран на вашата машина. Дистрибуцията на Easysoft включва версия на unixODBC Driver Manager, с която е тестван ODBC драйверът на Easysoft SQL Server. Програмата за настройка на драйвера Easysoft ви дава възможност да инсталирате unixODBC.

  3. Създайте ODBC източник на данни в /etc/odbc.ini, който се свързва с базата данни на SQL Server, до която искате да получите достъп от Delphi. Например:
    [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. Използвайте isql, за да тествате новия източник на данни. Например:
    cd /usr/local/easysoft/unixODBC/bin
    ./isql.sh -v SQLSERVER_SAMPLE
    

    При подкана въведете „помощ“, за да се покаже списък с таблици. За да излезете, натиснете връщане в празен ред с подкана.

    Ако не можете да се свържете, вижте тази статия и базата знания за драйвери на SQL Server ODBC за помощ.

  1. Ако още не сте го направили, инсталирайте PA сървъра на машината, където сте инсталирали ODBC драйвера на SQL Server.
  2. Настройте средата на тази машина, така че вашата програма Delphi да може да зареди ODBC драйвера на SQL Server. Например:
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/easysoft/sqlserver:/usr/local/easysoft/lib:
    /usr/local/easysoft/unixODBC/lib
    export $LD_LIBRARY_PATH
    

    Стартирайте PA сървъра. Например:

    cd ~/PAServer-19.0
    ./paserver
    

    Ако не сте инсталирали unixODBC Driver Manager, който е включен в дистрибуцията на драйвери на SQL Server ODBC, пропуснете /usr/local/easysoft/unixODBC/lib от стойността на променливата на средата.

  3. В RAD Studio създайте ново конзолно приложение на Delphi.
  4. Задайте целевата платформа за приложението да бъде 64-битов Linux.
  5. Редактирайте свойствата на профила за вашата целева платформа, за да посочите подробностите за вашия PA сървър.
  6. Вмъкнете кода, показан в началото на този урок, в приложението.
  7. Стартирайте приложението.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Задайте двойки ключ/стойност в контекста на сесията в SQL Server (sp_set_session_context)

  2. Събития на изчакване на SQL сървър -3

  3. Уроци за поща на база данни

  4. Как да деактивирате ограничение CHECK в SQL Server (примери за T-SQL)

  5. SQL WHERE.. IN клауза няколко колони