Delphi中连接数据库的三种方式

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Delphi中连接数据库的三种方式
北京航空航天大学余庆
利用Delphi 3. 0 可Delphi 3. 0 对访问数据库提供了强有力的支持
以开发出功能
强大的数据库应用程序。

Delphi 的可视化功能相当强大,制作个简单的仅对数据进
行查看和维护
的程序十分容易,可以不写任何代码就能实现! Delphi 3. 0 中访问
数据库的方
通过ODBC访问,式有三种:直接访问,如访问Paradox 和DBase 数据库:
如访问
通过内嵌(Native)方式访问数据库,如访Access、Foxpro 等数据库:
问SQL Server、
Oracle、DB2等。

在Delphi 中,可以使用Table 控件或/和Quer y控件来访
问数据库,二者的设置和用法部差不多,因此下面仅Table 控件为例说明这三种方式的特点和
用法。

1. 直接访问
Delphi 可以直接访问Paradox 和IDBase 这两个桌面型的数据库
系统。

访问这两种
类型的数据库时不需要特别的设置,只需要把文件路径赋给Table 控件的属
性DatabaseName 就可以访问该路径下的数据库了。

当然,也可以事先建立映射
数据库路径的数据库别名,然后把Table 控件的DatabaseName 属性设
置为相应的数
据库别名。

2. 通过ODBC访问
访问Paradox 和DBase 以外的数据库,通常是通过ODBC来实现的。

Delphi 可以访问
支持ODBC的数据库系统,如Access、SQL Server 和Oracle 等。

当然,通过ODBC 访问数据
库时,首先要使用Window s的控制面板或Delphi 的数据库引擎(BDE) 建立ODBC 数据
源。

在应用程序的控Delphi 提供了Database 控件,该控件的作用有:
制下和数据库
系统建立连接、进行事务处理等。

在数据库应用程序中,可以使
用Database 控
件,也可以不使用。

如果不使用Database 控件,可以直接把ODBC数据
源的名称
赋给Table 控件的属性DatabaseName 而达到访问该数据库的目的。


种方式的弊端
是在程序运行时由Delphi系统自动弹出登录到数据库的英文界面
的窗口,既不美观又不便于控制。

因此,笔者建议在数据库应用
程序中使用Database 控件
来登录到数据库系统。

把Table控件与Database 控件关联的方法是把
其DatabaseName
属性值指定为Database控件的DatabaseName 属性值。

个Database 控件可
以管理若干个
Table 控件。

和Database 控件建立关联以后,只要该Database控件已
经和数据库建立
了连接,Table 控件就可以直接访问数据库而无须再次登录。

3. 通过内嵌方式访问
Delphi 中可以不通过ODBC,而以内嵌方式访问SQL Serve r、Oracle、
DB2 等数据库系统。

这需要使用数据库别名来指定数据库,数据
库别名可以事先建立,也可以在程序运行时动态创建。

前者称
为静态别名,后者称为动态别名。

使
DBC数据源的情形相同,用数据库别名来访问数据库的方法和使用。

这里不再累述。

通过内嵌方式访问数据库的静态别名必须在BDE
中建立。

以访问SQL
Server 数据库为例,在建立别名时必须指定数据库服务器的名称(SERVER
NAME) 、主机名(HOST NAME) 以及要访问的数据库名称(DATABASE
NAME) ,可
以指定登录用户名(USER NAME) 和口令(PASSWORD) 等。

通过动态创建
的别名
来访问数据库必须使用Database控件。

如何设置Database控件中访
问数据库的参
数呢?用鼠标双击Database控件,出现参数设置窗口,在"Drive r name"
栏选择要
访问的数据库系统,如"MSSQL",然后选择按钮"Defaults",就会把BDE
中该数据库
系统所需的参数名称和缺省值加入到"Parameter overrides" 列表中。

根据实际情况
更改参数中的"SERVER NAME仁"DATABASE NAME" 等工页。

然后选择按钮"OK"就
可以了。

需要说明的两点是,以内嵌方式访问数据库需要在
安装
Delphi13.0 时指定
安装SQL Lit山Query 控件的SQL语句不能以分号结尾。

结论
通过内嵌方式访问数据库与通过ODBC访问数据库相比,前者
的速度要快
些。

而且,内嵌方式可以在程序中动态地设置连接数据库所需
的参数,
用户不必设置。

DBC数据源,这就降低了对用户技术水平的要求,并且减少
了用户的工作量。

从系统配置的难易和复杂程度来看,使用内嵌
方式开发
出的数据库应用系统更便于普通用户使用。

因此,笔者建议在开
发较大型
的应用系统时,最好通过内嵌方式来访问数据库。

出师表
两汉:诸葛亮
先帝创业未半而中道崩殂,今天下三分,益州疲弊,此诚危急存亡之秋也。

然侍卫之臣不懈于内,
忠志之士忘身于外者,盖追先帝之殊遇,欲报之于陛下也。

诚宜开张圣听,以光先帝遗德,恢弘志士之气,不宜妄自菲薄,引喻失义,以塞忠谏之路也。

宫中府中,俱为一体;陟罚臧否,不宜异同。

若有作奸犯科及为忠善者,宜付有司论其刑赏,以昭
陛下平明之理;不宜偏私,使内外异法也。

侍中、侍郎郭攸之、费祎、董允等,此皆良实,志虑忠纯,是以先帝简拔以遗陛下:愚以为宫中之事,事无大小,悉以咨之,然后施行,必能裨补阙漏,有所广益。

将军向宠,性行淑均,晓畅军事,试用于昔日,先帝称之曰“能”,是以众议举宠为督:愚以为营中
之事,悉以咨之,必能使行阵和睦,优劣得所。

亲贤臣,远小人,此先汉所以兴隆也;亲小人,远贤臣,此后汉所以倾颓也。

先帝在时,每与臣论
此事,未尝不叹息痛恨于桓、灵也。

侍中、尚书、长史、参军,此悉贞良死节之臣,愿陛下亲之、信之,则汉室之隆,可计日而待也。

臣本布衣,躬耕于南阳,苟全性命于乱世,不求闻达于诸侯。

先帝不以臣卑鄙,猥自枉屈,三顾臣
于草庐之中,咨臣以当世之事,由是感激,遂许先帝以驱驰。

后值倾覆,受任于败军之际,奉命于危难
之间,尔来二十有一年矣。

先帝知臣谨慎,故临崩寄臣以大事也。

受命以来,夙夜忧叹,恐托付不效,以伤先帝之明;故五月
渡泸,深入不毛。

今南方已定,兵甲已足,当奖率三军,北定中原,庶竭驽钝,攘除奸凶,兴复汉室,
还于旧都。

此臣所以报先帝而忠陛下之职分也。

至于斟酌损益,进尽忠言,则攸之、祎、允之任也。

愿陛下托臣以讨贼兴复之效,不效,则治臣之罪,以告先帝之灵。

若无兴德之言,则责攸之、祎、
允等之慢,以彰其咎;陛下亦宜自谋,以咨诹善道,察纳雅言,深追先帝遗诏。

臣不胜受恩感激。

今当远离,临表涕零,不知所言。

相关文档
最新文档