zoukankan      html  css  js  c++  java
  • FireDAC ADO性能测试

    数据量2w行,字段30个

    第一次open

    fd读取数据用时363毫秒,ado用时783毫秒

    第二次open 
    fd读取数据用时10毫秒,ado用时553毫秒

    遍历所有记录

    第一次

    fd读取数据用时2438毫秒,ado用时5590毫秒
     
    第二次
    fd读取数据用时1988毫秒,ado用时5548毫秒

    --------------------------------------------------

    fd读取数据用时363毫秒,ado用时783毫秒

    fd读取数据用时363毫秒,ado用时783毫秒

    FireDac 组件说明一

    TFDManager 连接定义和Connect连接管理 
    TFDConnection

    数据库连接组件,支持三种连接方式:1.持久定义(有一个唯一名称和一个配置文件,可以由FDManager管理)

     例:

      

    uses
      FireDAC.Comp.Client, FireDAC.Stan.Intf;
    var
      oDef: IFDStanConnectionDef;
    
    begin
      oDef := FDManager.ConnectionDefs.AddConnectionDef;
      oDef.Name := 'MSSQL_Connection';
      oDef.DriverID := 'MSSQL';
      oDef.Server := '127.0.0.1';
      oDef.Database := 'Northwind';
      oDef.OSAuthent := True;
      oDef.MarkPersistent;
      oDef.Apply;
      .....................
      FDConnection1.ConnectionDefName := 'MSSQL_Connection';
      FDConnection1.Connected := True;
    end;
     

    2.私有定义(有一个唯一名称可以由FDManager管理,无配置文件)

    例:

    var
      oParams: TStrings;
    begin
      oParams := TStringList.Create;
      oParams.Add('Server=127.0.0.1');
      oParams.Add('Database=Northwind');
      oParams.Add('OSAuthent=Yes');
      FDManager.AddConnectionDef('MSSQL_Connection', 'MSSQL', oParams);
      .....................
      FDConnection1.ConnectionDefName := 'MSSQL_Connection';
      FDConnection1.Connected := True;
    end;

    3.临时定义(没有名称和配置文件,不能由FDManager管理,运行时将参数写入params属性)

    例:

    uses
      FireDAC.Phys.IBDef, FireDAC.Phys.IBWrapper;
    ......
    FDConnection1.DriverName := 'IB';
    with FDConnection1.Params as TFDPhysIBConnectionDefParams do begin
      Protocol := ipTCPIP;
      Server := '127.0.0.1';
      Database := 'c:IBemployee.gdb';
      UserName := 'sysdba';
      Password := 'masterkey';
    end;
    FDConnection1.Connected := True;
    2. FDConnection1.ConnectionString := 'DriverID=MSSQL;Server=127.0.0.1;Database=Northwind;User_name=sa';

    FDConnection1.Connected := True;)

    end;

     TFDTransaction  数据库事务管理
     TADCommand  执行SQL语句。不返回结果
     TFDTableAdapter  提供应用程序与数据之间的通信
     TFDSchemaAdapter

    集中缓存更新。非常重要且实用的组件。先要将数据集,设置CachedUpdates属性为True。

     TFDMemTable FireDAC自家的内存表,三层必备的组件,也是非常重要,完全可以替代ClientDataSet
     FDQuery 类似于ADOQuery的组件,直接SQL语句并存储返回结果 
     TFDStoredProc 执行服务器存储过程
     TFDTable 类似于ADOTable,数据库表数据集 
  • 相关阅读:
    Json schema前奏 关于JSON
    笔试题:能被1~10同时整除的最小整数是2520,问能被1~20同时整除的最小整数是多少?
    CentOS7 安装 Docker、最佳Docker学习文档
    2019年4399暑期实习算法题2,迷宫路径条数
    2019vivo秋招提前批笔试题第3题
    python内存机制与垃圾回收、调优手段
    N皇后问题的python实现
    一行代码判断一个数是否是2的整数次方
    在O(1)的时间内删除链表节点
    打印从1到n位数的最大值
  • 原文地址:https://www.cnblogs.com/966615/p/12969312.html
Copyright © 2011-2022 走看看