此文章是vip文章,如何查看?  

1,点击链接获取密钥 http://nicethemes.cn/product/view29882.html

2,在下方输入文章查看密钥即可立即查看当前vip文章


delphi xe10.2 FIREDAC 三种连接

  • 时间:
  • 浏览:
  • 来源:互联网

以下都是在DELPHI XE10.2中测试通过

FireDAC supports three distinct options for connecting to your database. These are:

  1.  Temporary connections (临时)
  2.  Persistent connections (持久)
  3.  Private connections (专用)

 一、Temporary connections (临时)

  1)通过控件FDConnection直接创建

   通过从FIREDAC标签处拖入FDConnection到窗口中,效果如下图

双击FDConnection1,出下图

上图中需注意  必选  DRIVE ID  ,DATABASE,PASEWORD,USER_NAME,SERVER

如是本机,SERVER处可填127.0.0.1;

按OK,即可。

2)、Defining a Temporary Connection Using FDConnection.Params(通过FDConnection.Params创建临时连接)

上例中添加TFDPhysMSSQLDriverLink中窗口中

在窗口CREATE中添加如下代码

procedure TForm1.FormCreate(Sender: TObject);
begin
{需添加TFDPhysMSSQLDriverLink到窗口中}
 FDConnection1.Params.Add('Database=salesdb');
 FDConnection1.Params.Add('password=123');
 FDConnection1.Params.Add('User_Name=sa');
 FDConnection1.Params.Add('Server=win7server');
 FDConnection1.Params.Add('DriverID=mssql');
 FDConnection1.Connected:=true;
 FDQuery1.Open;

end;

 

或者采取如下代码

procedure TForm1.FormCreate(Sender: TObject);
begin
  FDConnection1.ConnectionString := 'Database=' +
              'salesdb;' +
              'User_Name=sa;password=123;Server=win7server;DriverID=MSSQL';
  FDConnection1.Connected:=true;
  FDQuery1.Open;

end;

 

3)、Creating a Named Connection Definition Using the FireDAC Explorer(通过tools/FireDAC Explorer 创建连接)

在CONNECTION  Definition右击选择connection Definition

支持对连接重命名(右击目标连接,选择重命名)

最后要注意,右击目标连接 APPLY 一次,保存之后,重启 DELPHI XE 10 ,在右侧

把连接名ConnectionDef1拖入空口即可,ConnectionDef1下的所有项目都支持拖动到窗口哟,然后Connected:=true 就好了。


二、Persistent connections (持久)

A persistent connection employs a named connection whose definition exists in an external ini file. This named connection may be created at either design time or at runtime.

可通过注册表或INI文件来创建;

(一)、用记事本创建一个新的文件,输入以下内容:

[conn.ini]
Encoding=UTF8

REM Connections not related to this discussion appear here

[MSsql]
DriverID=MSSQL
Protocol=TCPIP
Database=salesdb
User_Name=sa
Password=123
Server=win7server
CharacterSet=
ExtendedMetadata=Tru

 

然后别存为

把此CONN.INI文件复制到你的应用文件夹下

之后在窗口CREATE中输入以下代码

procedure TForm1.FormCreate(Sender: TObject);
begin
    FDManager.ConnectionDefFileName :=
    ExtractFilePath(ParamStr(0)) + 'conn.ini';
    FDConnection1.ConnectionName := 'MSsql';  //跟CONN.INI中的第二个括号中的MSsqL一致
    FDConnection1.Open;
    FDQuery1.Active:=true;
end;

效果跟 前面的一致。(可以共享给其它程序用哟)

三、 Private connections (专用)

直接上代码

procedure TForm1.FormCreate(Sender: TObject);
var
 Params: TStrings;
begin
 Params := TStringList.Create;
 try
    Params.Add('Database=salesdb' );
    Params.Add('User_Name=sa');
    Params.Add('password=123');
    Params.Add('Server=win7server');
    Params.Add('Pooled=True');
    Params.Add('DriverID=mssql');
    FDManager.AddConnectionDef('mssql_test', 'mssql', Params);
    { mssql_test随便取名,MSSQL是MSSQL SERVER的驱动名称,我用的是 MSSQL SERVER  ,所以用MSSQL;
    如果你用的是INTEBASE的数据库,其结构类似如下:}
    {Params.Add('Database=' +
    'C:\Users\Public\Documents\Embarcadero\' +
    'Studio\19.0\Samples\Data\EMPLOYEE.GDB');
    Params.Add('User_Name=sysdba');
    Params.Add('Server=127.0.0.1');
    Params.Add('Pooled=True');
    Params.Add('DriverID=IB');
    FDManager.AddConnectionDef('IB_EMPLOYEE', 'IB', Params);}

 finally
    Params.Free;
 end;
 FDConnection1.ConnectionDefName := 'mssql_test';
 FDConnection1.Connected := True;
 FDQuery1.Active:=true;
end;

本文链接http://element-ui.cn/news/show-577354.aspx