zoukankan      html  css  js  c++  java
  • SQLDataSet中执行DDL语句

    在SQLDataSet中执行我们输入的DDL语句,并观察执行结果。

    这里为了省输入的时间,从先输好的记事本中复制的SQL语句。效果图:

    **************************************************************************************

    具体操作:

    **************************************************************************************

    DBGrid1.DataSource->DataSource1.DataSet->ClientDataSet1.ProviderName->DataSetProvider1.DataSet->

    SQLDataset1.SQLConnection->SQLConnection1具体数据库(这里连接的是oracle中的新建的Persons(根据自己新建的表名)表);

    这里SQLDataset1和ClientDataSet1都不能设置为TRUE,因为表还没建起来,会返回个错误。

    现在在放入一个SQLDataSet2控件,SQLDataset2.SQLConnection->SQLConnection1执行我们的DDL语句。

    现在窗体结构应该如下图:

    **************************************************************************************

    主要代码:

    **************************************************************************************

    procedure TForm3.ExeSQLScript;
    var
      strScript:string;
      strSQL:string;
      iPos:integer;
    begin
       strScript:=Memo1.Lines.Text;
       while Length(strScript)>0 do
       begin
         iPos:=Pos(';',strScript);
         if iPos>0 then
         begin
           strSQL:= Copy(strScript,1,iPos-1);
           SQLDataSet2.CommandText:=strSQL;
           SQLDataset2.ExecSQL(true);
           Delete(strScript,1,iPos);
         end else
         begin
           break;
         end;
       end;
       if ClientDataSet1.Active then
        begin
       ClientDataSet1.Refresh;
        end else
        begin
          ClientDataSet1.Active:=true;
        end;
    end;
    
    procedure TForm3.Button1Click(Sender: TObject);
    begin
      ExeSQLScript;
    end;

    能上代码在DELPHI XE5 ,WIN7 X64,ORACLE 11G中测试通过。

  • 相关阅读:
    追星必备神器 -- 爱豆APP
    关于结对编程项目(Sports club 三)
    关于结对编程项目(Sports club 二)
    关于结对编程项目(Sports club)
    关于对当前大学生的痛点分析
    关于wc项目的简单基本前期制作。
    个人项目作品设计——Sports history
    简单四则运算
    关于介绍手机k歌娱乐软件
    结对项目(3)
  • 原文地址:https://www.cnblogs.com/sun998/p/6507579.html
Copyright © 2011-2022 走看看