Delphi开发单机瘦数据库程序要点

原创 2004年02月17日 18:48:00
一、概述

  Delphi作为Windows下的一种快速开发工具,不仅能开发一般的Windows应用程序,而且还具有强大的数据库应用程序开发功能。Delphi本身提供了对BDE,ODBC,ADO和InterBase几种数据库驱动的支持,能够满足不同应用对数据库程序开发的需要。

  然而,在发布用Delphi开发的数据库程序时,除了要安装应用程序之外,还需要同时发布数据库驱动程序。这对于一些只涉及单个或多个简单表数据存储的单机应用程序来说,就显得有点头重脚轻的感觉了。况且,有些应用程序本身需要存储大量数据,但本身又要求结果短小精悍的话,用Delphi常规开发数据库的方法就不能满足需要了。

  那么,有没有办法解决上述矛盾,开发出能脱离庞大的数据库驱动程序的”瘦”数据库单机应用程序呢?Delphi5在Midas控件面板中提供了一个TClientDataSet控件,可以很好地解决这个问题。

  二、TClientDataSet使用要点

  TClientDataSet控件继承自TDataSet,其数据存储文件格式扩展名为.cds,是基于文件型数据存储和操作的控件。该控件封装了对数据进行操作处理的接口和功能,而本身并不依赖上述几种数据库驱动程序,基本上能满足单机”瘦”数据库应用程序的需要。

  1.TClientDataSet的基本属性和方法介绍

  1).FieldDefs: 字段定义列表属性

  开发者可通过单击属性编辑器中该属性编辑按钮,或在该控件上单击右键选择弹出菜单中的”Fields Editor”菜单进行字段编辑。设置完此属性后,实际上就相当于定义了表的结构;如果想装入已有的数据表的结构和数据,可通过单击右键选择弹出菜单中的”Assign Local Data”菜单,从弹出对话框中选取当前窗体中已与数据库连接好的数据集控件名称即可(当前窗体中必须已放置好要套用的数据集控件并打开激活)。

  使用注意:

  对于自定义的字段名表,该属性编辑完后,该控件仍然无法打开。必须右键单击该控件,选择弹出菜单中的”Create DataSet”菜单,让该控件以上述编辑的字段列表为依据,创建数据集后,才能够被激活打开和使用。否则,会出现类似”ClientDataSet1: Missing data provider or data packet.”的错误(包括在运行期,运行期可调用该控件的CreateDataSet方法,从而动态定义字段和表)。
2).FileName属性

  说明:数据存储文件的名称。

  因该控件是基于文件型的数据操作控件,因此,必须指定所操作的数据文件名称(默认扩展名称.cds),从而打开和激活该控件,进而进行数据编辑。

  例1:利用此属性打开指定的.cds文件

var
Path: string;
begin
 Path := ExtractFilePath(Application.ExeName); //取得可执行文件路径
 CDataSet1.FileName := Path + ’test.cds’;
 CDataSet1.Open;
end;

  3).CreateDataSet方法

  说明:该方法以FieldDefs中的字段名表为结构建立数据集,常用来进行动态定义表。

  例2:动态创建一具有姓名和年龄两个字段的数据集。

//创建字段名表
CDataSet.FieldDefs.Clear;
with CDataSet.FieldDefs.AddFieldDef do
begin
 Name := ’Name’;
 Size := 10;
 DataType := ftString;
end;
with CDataSet.FieldDefs.AddFieldDef do
begin
 Name := ’Age’;
 DataType := ftInteger;
end;
 //动态创建数据集
 CDataSet.CreateDataSet;
 //激活和打开该数据集
 CDataSet.Open;

  4).Open方法

  说明: 打开和激活数据集控件,从而进行数据编辑。

  a. 如果指定了FileName属性,则直接用Open方法即可打开和激活该控件,见例1。

  b. 如果未指定FileName属性,可使用例2方法动态创建和打开数据集,进而操作数据。

  5).LoadFromFile和SaveToFile

  说明:从文件中装入表结构和数据以及存储数据到文件。该方法类似于Word中的打开新文件和另存为的功能。

  例3:将数据集的数据存储到指定文件中

CDataSet.SaveToFile(’c:/windows/desktop/test.cds’);

  6).First(到首),Prior(向前),Next(向后),Last(到尾),Edit(编辑),CanCel(取消编辑),Post(保存),Insert(插入记录),Append(添加记录),Delete(删除),Refresh(数据刷新)等数据集常用方法

  说明:当指定了FileName属性时,其Post方法可将数据存入指定的文件中,类似其SaveToFile方法;如果未指定存储文件名,则Post方法只将数据存储在RAM中。其它方法,同一般数据集控件使用方法,略。

  7).Filter, Filtered: 过滤筛选属性

  说明:用于筛选指定条件的记录,用法同一般数据集控件,略。

  例4:在已经激活打开的数据集中筛选性别为男性的记录

CDataSet.Close;
CDataSet.Filter := ’性别=’’’ + ’男’ + ’’’’;
CDataSet.Filtered := True;
CDataSet.Open;

  2.使用TClientDataSet控件的应用程序发布的注意事项:

  如前所述,使用TClientDataSet控件的程序发布时不需要任何数据库驱动程序,大大节省了安装文件的大小。但是,在发布程序时别忘了将Windows系统目录下midas.dll(257KB)与应用程序一起发布(运行必须),否则,程序仍然无法正常运行。

  三、结束语

  通过使用Delphi中TClientDataSet控件,既实现了应用程序可彻底脱离数据库驱动程序,也实现了常规数据集控件简单易用的特性,为编写”瘦”数据库应用程序提供了一种技术方法和手段。

  上述程序在Pwindows98,Delphi5下测试通过。

Delphi开发单机瘦数据库程序要点(后缀cds)

一、概述    Delphi作为Windows下的一种快速开发工具,不仅能开发一般的Windows应用程序,而且还具有强大的数据库应用程序开发功能。Delphi本身提供了对BDE,ODBC,ADO和...
  • delphi308
  • delphi308
  • 2014年03月17日 20:16
  • 1723

Delphi开发单机瘦数据库程序要点

Delphi开发单机瘦数据库程序要点日期:2004年12月30日 作者:loveghb 人气:2736 查看:[大字体 中字体 小字体]  一、概述  Delphi作为Windows下的一种快速开发工...
  • diligentcat
  • diligentcat
  • 2010年04月03日 11:40
  • 551

Delphi编写数据库程序要点

Delphi是著名的Borland公司开发的可视化软件开发工具。有这样一句话最为经典、贴切的描述了Delphi——“真正的程序员用C,聪明的程序员用Delphi”。很多人把Delphi称为是第四代编程...
  • my98800
  • my98800
  • 2016年07月21日 10:08
  • 589

单机数据库性能测试总结

 当前单机数据库(文件型数据库)有很多,为了选择更好的数据库,以便以后使用,在这主要对以下数据库进了插入、查询的速度进行测试,以及数据库的管理方式进行详细说明。数据库分别为:SQLLite、FireB...
  • wjlwjlwjlwjl
  • wjlwjlwjlwjl
  • 2010年05月25日 12:59
  • 7027

一个简单的java桌面应用:单机版IFTTT

本项目是由java编写的一款基于触发器-动作框架的IFTTT窗口程序。 用户可以指定this和that事件。当应用监测到this事件发生时,将自动执行that事件。...
  • lijunfan1994
  • lijunfan1994
  • 2015年11月16日 16:06
  • 1954

用Delphi开发Web服务数据库程序

第一步:编写服务器的应用程序 首先在Delphi的IDE中选择”File|New|Other…”,然后在WebServices页面中选择Soap Server Application图标。 然后在...
  • manstar
  • manstar
  • 2012年01月27日 20:33
  • 946

老程序员之DELPHI XE5之手机应用开发案例之一

Delphi EX5发布已有一年了,本人通过其已实现了几个小的手机应用,评价如下: 1)EX5稳定性和性能都得到了很好的提升,至少目前没有感觉任何不适; 2)真正实现了一次编码,多版本发布的目标,无论...
  • whye1974
  • whye1974
  • 2013年12月09日 17:54
  • 2419

Delphi编写数据库程序要点(一)

   Delphi是著名的Borland公司开发的可视化软件开发工具。有这样一句话最为经典、贴切的描述了Delphi——“真正的程序员用C,聪明的程序员用Delphi”。很多人把Delphi称为是第四...
  • zaowei21
  • zaowei21
  • 2005年01月07日 18:02
  • 1900

Delphi 程序制作要点

Delphi 程序制作要点      *****************************************************************  *             ...
  • beyond911
  • beyond911
  • 2009年06月28日 10:45
  • 340

delphi 10 Seattle 第一个Android程序

1.打开Delphi RAD Studio Seattle,如下图 2.选择black application 点击OK 3.在打开的窗口中,放入一个Label控件和一个Button控件,...
  • zang141588761
  • zang141588761
  • 2016年09月04日 10:20
  • 3379
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Delphi开发单机瘦数据库程序要点
举报原因:
原因补充:

(最多只允许输入30个字)