zoukankan      html  css  js  c++  java
  • delphi使用ODAC控件常用功能

    Macro 宏使用

    说明

    ODAC将所有宏名称替换为其值,并在请求执行SQL时将SQL语句发送到服务器。

    使用

    property Macros: TMacros stored False;
    function MacroByName(const Value: string): TMacro;

    可以使用Macros[宏顺序]方式获取(依赖于条目的顺序,容易出错)

    也可以使用MacroByName('宏名称')的方式

    property AsDateTime: TDateTime;  //使用TDataTime值设置为宏。
    property AsFloat: double;  //使用float值分配给宏。
    property AsInteger: integer;  //使用integer值分配给宏。
    property AsString: string;  //使用字符串值分配给宏。
    property Value: string;  //用于将值设置为宏。

    AsString与Value的区别是,Value会将内容直接替换,AsString会将内容都转为字符串(自动加引号)

    //替换后的结果是一样的
    Query1.MacroByName('StringMacro').Value := '''A string''';
    Query1.MacroByName('StringMacro').AsString := 'A string';
    property Active: boolean default True;

    设置为True时,将使用宏中的内容替换,否则宏定义将替换为空字符串。默认值是true。

    列子

    1.替换表名

    Query1.SQL.Text := 'SELECT * FROM &TableName';
    Query1.MacroByName('TableName').Value := 'Dept';
    Query1.Open;

    2.替换条件

    OraQuery.SQL.Text := 'SELECT * FROM Dept WHERE &Where > 20';
    OraQuery.Macros[0].Value := 'DeptNo';

    3.替换值

    OraQuery.SQL:= 'SELECT * FROM Dept ORDER BY &Order';
    OraQuery.MacroByName('Order').Value:= 'DeptNo';
    OraQuery.Open; 

    3.批量授权

    Script1.SQL.Add('CREATE USER &Username IDENTIFIED BY &Password;'); 
    Script1.SQL.Add('GRANT &Privileges TO &Username;');
  • 相关阅读:
    ASCII码表
    DropDownListSelectedByValue();替代SelectedValue=string
    得到str1在str2中出现的次数 GetCountInStr(string str1,string str2)
    Framework 1.1 和 2.0(Bate)兼容性(2)
    服务没有及时响应启动或控制请求
    LoadControl加载控件要注意的两点
    ADO.Net Entity Framework之EDM应注意
    扩展CheckBoxFieldPro
    对Url的QueryString操作的两个函数
    MS SQL的日志
  • 原文地址:https://www.cnblogs.com/txgh/p/13451680.html
Copyright © 2011-2022 走看看