Delphi数据库的动态建立

2025-02-24 14:19:36
推荐回答(1个)
回答1:

  delphi 最吸引人的特点之一就是它的强大的数据库访问能力 通过database desktop 工具可方便的建立 编辑数据库 由于实际原因我们往往需要在程序运行状态下动态建立某个数据库

  如果你让用户用database desktop 工具手工建立数据表那么你写的程序将会打大折扣 不过你不用担心delphi完全可以用语言来完成此功能 为我们提供方便 我在学习和实践中总结出两种方法 我叫做table法和sql法 下面通过简单的实例来描述动态数据库建立的过程

   一 Table方法

   (以建立paradox数据表为例假设库名为ljh db) 新建一工程文件zhoudf dpr 在unit 中的uses语句中加入db dbtables单元

   在面板上选取button元件置于form 表中 双击button 输入如下代码

  Procedure Tform Button Click(Sender: Tobject);

   var table :ttable; begin table :=ttable create(self);

   with table do begin active:=false;

    tablename:= ljh db ;

    tabletype:=ttparadox; with fielddefs do {此方法为ljh db增加字段} begin clear;

    add( yj ftdate false);

    add( zp ftstring false); {增加具体的字段名 类型}

    add( zdm ftinteger false);

   end;

   With indexdefs do {此方法为ljh db增加索引字段} Begin Clear;

    Add( yjindex yj [ixprimary]);

   end;

   createtable;

   end;

  end;

  二 sql方法 在面板上选取button元件置于form 表中 双击button 输入如下代码

  Procedure Tform Button Click(Sender: Tobject);

   var table :tquery; begin table :=tquery create(self);

   with table do begin with sql do begin clear;

    add( create table ljh db );

    add( (yj date );  {注意引号中的 ( }

    add( zp char( ) );

    add( zdm int) ); {注意引号中的 ) }

   end;

   execsql;

   sql clear;

   sql add( create index yj on ljh db (yj) ); {此sql语句为ljh db增加索引字段}

   execsql;

  end;

  end;

lishixinzhi/Article/program/Delphi/201311/24746