Delphi数据库的动态建立

 我来答
新科技17
2022-11-20 · TA获得超过5911个赞
知道小有建树答主
回答量:355
采纳率:100%
帮助的人:75.4万
展开全部

  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

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式