zoukankan      html  css  js  c++  java
  • delphi使用ODAC控件 TOraScript组件介绍

    TOraScript组件 

    执行SQL和PL / SQL语句。

    说明

    TOraScript组件,可以执行多个SQL语句,包括DML和DDL语句,使用分号(;)分隔单个语句。

    执行期间发生的错误可以在TDAScript.OnError事件中进行处理。 默认情况下,发生错误时,TOraScript会显示异常并继续执行。

    常用属性

    property Delimiter: string stored IsDelimiterStored; //设置分隔脚本语句的字符串。
    //默认是分号(;)。 如果Delimiter属性的值为分号,则可以使用斜杠(/)分隔执行包含分号的语句(存储过程,遇到分号,不能马上执行,需要通过斜杠(/)来执行)。 
    //注意,斜杠必须是行中的第一个字符。
    property Statements: TDAStatements; //包含从SQL属性获得的语句列表。
    //例子,不执行创建表的SQL语句
    with OraScript1 do 
    begin 
      SQL.Add('CREATE TABLE T_TESA(TCODE NUMBER(8), TNAME VARCHAR2(10));');
      SQL.Add('INSERT INTO T_TESA VALUES(1, ''a'');'); SQL.Add('INSERT INTO T_TESA VALUES(2, ''b'');');
      SQL.Add('INSERT INTO T_TESA VALUES(3, ''c'');');
      for I := 0 to Statements.Count - 1 do 
      begin
        if Copy(Statements[I].SQL, 1, 6) <> 'CREATE' then
        Statements[i].Execute;
      end;
    end;

    常用函数

    procedure Execute; virtual; //执行所有SQL语句。 如果Oracle引发错误,则会触发OnError事件。
    procedure ExecuteFile(const FileName: string); //执行文件中包含的SQL语句。
    //参数 FileName 文件名
    procedure BreakExec; virtual; //停止SQL语句执行。
    function ErrorOffset: Int64; //如果Execute方法引发异常,则调用ErrorOffset方法以获取语句的偏移量。
    //返回值 错误的偏移量。

    常用事件

    procedure BeforeExecute(Sender: TObject; var SQL: string; var Omit: boolean); //在执行当前SQL语句之前触发。
    //SQL 当前将执行的SQL语句的文本。 编写SQL来更改将要执行的语句。
    //Omit 是否跳过当前语句的执行,将Omit设置为True可跳过语句执行。  
    procedure OnError(Sender: TObject; E: Exception; SQL: string; var Action: TErrorAction); 
    //执行语句,Oracle发错误时发生。 //E 错误信息 //SQL 执行的SQL语句。 //Action OnError处理程序退出时要执行的操作。默认为eaFail。
    //TErrorAction = (eaAbort, eaFail, eaException, eaContinue);
    eaAbort 中止执行而不显示错误消息。
    eaContinue 继续执行。
    eaException 在Delphi 6和更高版本中,异常由Application.HandleException方法处理。
    eaFail 中止执行并显示错误消息。
  • 相关阅读:
    「JavaSE 重新出发」05.03.02 在运行时使用反射分析对象
    「JavaSE 重新出发」05.03.01 利用反射分析类
    「JavaSE 重新出发」05.03 反射
    「JavaSE 重新出发」05.02 泛型数组列表、包装类
    scp 命令简明介绍
    《鸟哥的Linux私房菜》笔记——04. 简单命令行
    《鸟哥的Linux私房菜》笔记——03. 磁盘分区
    「JavaSE 重新出发」05.01.02 hashCode 方法、toString 方法
    「JavaSE 重新出发」05.01.01 equals 方法
    「JavaSE 重新出发」05.01 继承
  • 原文地址:https://www.cnblogs.com/txgh/p/14351850.html
Copyright © 2011-2022 走看看