填写数据(Filling some data)

       为了有一些“哑元”(dummy)数据,在类型(Type)表中填上以下4个记录:“游戏(Game)”,“数据库(Database)”,“互联网(Internet)”,“图形(Graphics)”。在选择存储在应用程序表(Applications)中的应用程序类型时,这些值将被使用。 接下来,在作者表(Authors)中增加一行:'Delphi Guide'、'delphi.guide@about.com'、 'http://delphi.about.com'。最后,在应用程序表(Applications)中加上一行:'Zoom'、'Zooming the Destop'、'Delphi Guide'、'Graphics'、10、0、02/20/2001,同时让最后一个字段(照片)为空。

怎样处理这些“空”(blank)的数据库......在本教程的余下章节将进行说明。

第二章   连到数据库,用ADO? BDE?

第一节  Delphi数据库连通性

         像在上一章中所显示的那样,数据库是以一定的结构格式存储数据的一个或多个表的集合。这些表包含以行、列的形式表现的数据。当一个数据库包含一个或多个表时,这些表通常拥有分散但相关的数据。MS Access、Interbase、SQL Server用一个文件表示完整的数据库(MS Access是*.mdb文件)。另一方面,Paradox和dBase由代表索引和表关系的单独的表和文件定义。描述Paradox数据库的所有文件通常存放在一个目录中。当然,Delphi可以以这两种方式工作。

用Delphi,我们可以连到不同类型的数据库:本地或C/S(远程服务器)数据库。本地数据库存放在本地驱动器或本区域网中。远程数据库服务器通常位于远端机器。本地数据库的类型有Paradox、dBase和MS Access。C/S数据库有MS SQL Server、Interbase或Oracle。

本地数据库通常被称为单层数据库。单层数据库对任何变化如:编辑数据、插入记录、或删除记录-立即实现。单层数据库在表所容纳的数据量大小和应用程序所支持的用户量的多少上有限制。当数据库包含几个表之间复杂关系的信息时,或当客户端数量增加时,你需要使用二层或多层应用程序。客户端应用程序在本地机上运行;应有程序服务器多运行在服务器上,而数据库可能位于另一个服务器。多层体系的思路是客户端程序可以非常小,因为应用程序服务器可以完成很多工作。这可以使你编写所谓瘦客户端应用程序。

当我们用Delphi编写数据库应用程序时,我们需要用一些数据库引擎访问数据库的数据。数据库因请允许你把焦点集中在你所访问的是什么数据,而不是怎样访问它。从第一版开始,Delphi就为数据库开发人员提供了BDE(Borland Database Engine)。除了BDE外,从第五版开始,Delphi提供对微软的ADO数据库接口的支持。

本教程将重点关注用MS Access本地数据库开发单层数据库应用程序。

第二节 Borland 数据库引擎(BDE)

BDE是所有Borland产品—包括Delphi和C++Builder—时共同的数据访问层。BDE是一个DLL(Dynamic Link Libraries)和工具的集合。它的漂亮之处在于所有的数据处理对于开发者都是透明的。BDE带有一套驱动,可以使你的应用程序与多种不同类型的数据库进行交流。这些驱动把高层次数据库命令(如open或post)和任务(记录锁定或SQL结构)转化为特殊的数据库类型所需要的特定命令,这些特殊的数据库有:Paradox、dBase、MS Access或任何ODBC数据源。BDE API (Application Programming Interface 应用程序编程接口)包含200多个过程和函数,它们可以从BDE单元获得。幸运的是,你几乎根本不需要直接调用这些程序。相反地,你通过VCL(译者加:Visual Component Library可视组件库)的数据访问组件—位于组件面板的数据访问页(Data Access)使用BDE。为了访问特殊的数据库,应用程序只需知道数据库的别名(Alias)就可以访问该数据库的所有数据。别名在BDE管理器(BDE Administrator)中建立,它指定了驱动器的参数和数据库的位置。BDE自带一个数据库驱动集,可以访问大范围不同类型的数据元。标准的BDE驱动包括Paradox、dBase、MS Access、ASCII文本。当然,任何ODBC驱动器也能通过ODBC管理器(ODBC Administrator)被BDE使用。

使用BDE访问数据库的Delphi应用程序需要为应用程序分发BDE。当配置应用程序的BDE时,你必须使用InstallShield Express或别的Borland指定的安装程序。

BDE作为数据库引擎有其优点也有其缺点。但是,在本教程中将不讨论为什么和什么时候你应该(或不应该)使用BDE方法而不是某些非BDE技术。

既然本教程是讨论ADO/MSAccess的,那么余下部分将集中在这种非BDE的数据库方法。

2002年12月22日

Delphi数据库编程教程(二)相关推荐

  1. Delphi数据库编程教程(四)

    第三章 数据库中的图片 第一节 处理BLOBs,在Access中存储图片       现在开发数据库应用程序不仅仅只需要处理文本或数字数据.例如,如果你正开发基于Interner/Intranet或基 ...

  2. Delphi数据库编程教程(七)

    第四章  数据浏览和导航 第一节  设置和连接       欢迎来到免费DB Delphi教程的第四章!到现在为止,本教程以说明了怎样连接到Access数据库及怎样显示数据库表中的图形数据.在上一章我 ...

  3. Delphi数据库编程教程(三)

    第三节 ADO(ActiveX Data Objects)编程模型 如文章"Delphi中引入ADO"所叙述的,ADO是一套COM(Component Object Model组件 ...

  4. Delphi数据库编程教程(五)

    第二节  使用DBImage引出JPEG-错误的方式      DBImage-思路一(The DBImage - take one)       当试图使用Delphi做新的尝试时,我所做的第一件事 ...

  5. Delphi数据库编程教程(九)

    第五章 数据集数据的后面..... 第一节 数据的状态 当用Delphi和ADO开发数据库应用程序时,大部分工作用于学习数据集组件的帮助文档..为了创建一个基于ADO的程序,Delphi提供了几个数据 ...

  6. C语言连接MySQL数据库编程教程:超详细

    ** C语言连接MySQL数据库编程教程 ** 一.下载安装mysql.h库文件 我们使用的编译器一般为VC6.0或者VS,默认的都是32位编译器,所以我们下载的库文件也直接下载32位的就可以.下面附 ...

  7. Delphi数据库编程一日通

    Delphi数据库编程一日通. 通常情况下,利用 Delphi 开发数据库应用程序,可以使用TTable.TDataSource.TDBEdit.TDBNavigator等构件.只要正确设置了构件的某 ...

  8. [网络安全自学篇] 十五.Python攻防之多线程、C段扫描和数据库编程(二)

    这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步.前文分享了Python网络攻防相关基础知识,包括正则表达式.Web编程和套接字通信 ...

  9. vb数据库编程(二)--数据控件

    什么是绑定控件?绑定控件指的是一个窗体上的"对象",由于创建它的那个控件设置了显示数据库信息方面的功能,通过设置对象的datasource(数据源)属性和datafield(数据字 ...

最新文章

  1. 2017 年已读书单总结
  2. idea junit简单实践
  3. Java并发编程-并发工具包java.util.concurrent使用指南
  4. Android——浙理体育(飞翔的红蜻蜓)训练记录上传与查询测试DEMO解决方案
  5. Boost::context模块fiber的回溯测试程序
  6. apache.camel_Apache Camel 3.1 –即将推出更多骆驼核心优化
  7. [css] 在页面中的应该使用奇数还是偶数的字体?为什么呢?
  8. 一对一软件开发:在一对一社交app源码中加入这个功能,很有用...
  9. as2.0与php交互,Flash(AS2.0)与php通讯 分享
  10. Spring AOP动态代理原理与实现方式
  11. mklink实现软件搬家清理C盘空间
  12. oracle用nas还是本地存储,为什么大家都在用NAS网络存储?
  13. 每日工作问题记录总结(好习惯 打卡2/?)
  14. 电脑没有声音提示“外设似乎没有插上”怎么办
  15. Dev++ 环境设置C语言关键字显示颜色
  16. phpstudy弹出windows-没有软盘,exception processing c0000013 parameters *** *** ***
  17. 《笨办法学python》加分习题31——我的答案
  18. 二级office Excel与PowerPoint篇(重难点分析)
  19. 机器学习与深度学习——通过knn算法分类鸢尾花数据集iris求出错误率并进行可视化
  20. 登陆页面的获取验证码

热门文章

  1. IT圈子里鬼混,谈谈IT行业的收入和一些生存之道(转)
  2. LoadRunner开始录制时启动浏览器卡死的解决办法
  3. KUKA机器人之系统镜像
  4. git rebase解决冲突
  5. 第二高的薪水 第N高的薪水
  6. 如何设置手机在线客服用户户对话左上角的头像与名称?
  7. 为什么直接双击Excel 2016 打开里面是灰色,看不到工作表及内容?
  8. 2018年高二上12月月考总结暨2018年度总结、2019年规划
  9. pyqt5上位机开发框架
  10. Placer lever enfermer apparaître toujours forme.