封面
《Delphi5数据库应用中ODBC数据源的自动管理》
Word格式可编辑含目录
精心整理放心阅读欢迎下载
文档信息
Delphi5数据库应用中ODBC数据源的自动管理
目录
一、前言
二、原理
1、 ODBC数据源
1注册DSN本身的信息:
C:\WINDOWS\SYSTEM\c:\test\
19H(十六进制数)
2
2、 BDE别名
3、 Itall Shield
4、 Delphi的注册表控件
正文
Delphi 5数据库应用中ODBC数据源的自动管理
蒋冠雄徐骋飞
绍兴文理学院实验中心
摘要本文分析了ODBC数据源设置的原理以及ODBC数据源和Delphi数据库别名的关系。并在此基础上介绍了在Delphi5数据库应用程序安装、运行中如何编程实现ODBC数据源和De lphi数据库别名的设置
关键字 Delphi、数据库、 ODBC
一、前言
Delphi的特色之一就是方便而强大的开发数据库的能力只要轻击几下鼠标填写极少的几行代码就能快速地开发出很有风格的数据库应用程序。编写一个数据应用可以很简单但要在别人的计算机上运行自己的应用却要费一些周折。
首先如果对方的计算机上还没有安装过I npr i se公司的BDE数据库引擎的话那么就必须把BDE和应用程序一起安装到对方的计算机中。其次应用程序中用到的数据库别名Alias 特别是使用了ODBC数据源连接的数据库别名必须和BDE一起设置。最后如果应用程序使用的数据库其存放路径并不是固定的那么必须根据实际情况进行ODBC和Alias的调整。这些 当然可以在应用程序安装后利用控制面板中ODBC数据源管理和BDE随带的BDE Admini strator通过手工设置。但如此一来一方面会使应用程序大打折扣另一方面不便于普通用户自己的安装和今后工作路径的改动。
和Delphi一起发布的Itall Shield Express可以大大简化安装程序的制作帮助我们完成许多工作。本文将要介绍的便是如何通过Itall Shield和应用程序配合完成安装和运行时的ODBC数据源的自动设置。
二、原理
1、 ODBC数据源
ODBC Open DataBase Conectivity是微软公司制定的标准编程接口只要有相应的ODBC驱动程序就可以通过ODBC连结操作各种不同的数据库。通常通过控制面板中的ODBC Data Source来配置ODBC的数据源。所谓ODBC数据源就是命名的一组信息包括需要连结的数据库所在位置可以是磁盘目录/文件也可以是网络服务器 、对应的ODBC驱动程序以及访问数据库所需的其他相关信息用户可以通过数据源的名称(DS Data Source Names)来指定所需的ODBC连接。
DS按照其保存方式和作用范围分为三种用户DSN、系统DSN和文件DSN。每个文件DSN保存在单独的一个文件中文件可以在网络范围内共享用户DSN保存在注册表中只对当前用户可见系统DSN页保存在注册表中但对系统中的所有用户可见。用户DSN和系统DSN的区别在于用户D SN保存在注册表的HKEY_CURRENT_US ER下而系统DSN保存在HKEY_LOCAL_MACHINE下。
下面 以系统DSN为例说明如何通过修改注册表直接设置ODBC数据源。假定我们要连接的数据库是Access97的c:\test\(注意用较
新的ADO连接Access数据库效率更高这里只是作为一个例子) 数据源的'名称为CenterAuto那么可以分为两个步骤
1注册DSN本身的信息:
在HKEY_LOCAL_MACH INE\So f tware\ODBC\下添加主键Ce nt e rAu to。主键的名称CenterAuto就是数据源的名称。 向CenterAuto添加键值关键的几项是
键值名
键值类型
键值
含义
Driver
字符串(String)
C:\WINDOWS\SYSTEM\
ODBC驱动程序DLL
DBQ
字符串(string)
c:\test\
连接的数据库
DriverID
双字(Dword)
19H(十六进制数)
FIL
字符串(string)
MS Access;
在CenterAuto下添加主键Engines在Engines下添加主键Jet在Jet下添加键值要是一些配置信息例如ImplicitCommitSync、MaxBuffeize、 PageTimeout、 Threads。
关于不同的ODBC数据源的具体设置可以查阅有关书籍不过最简单的方法是在控制面板中设置相应的数据源然后用Regedit 98中或Regedit32 NT中察看一下注册表。
2登记数据源在HKEY_LOCAL_MACHI NE\So f tware\ODBC\\ODBCData Sources下添加键值名CenterAuto类型为字符串键值为“Microsoft Access Driver (*.mdb) ” 。其中键值名指出了DSN必
须和前面的对应起来键值则指出了ODB C驱动程序的名称必须是已安装了的。
2、 BDE别名
De lphi通过BDE实现数据库的操作。在连结数据库时可以直接指出数据库的存放路径也可以通过指定别名实现但前者只能实现对文件型数据库的连接如果要连接服务器上的数据库或ODBC数据源则必须通过别名。
BDE的别名可以用随带的Database Desktop中Alias Manager进行管理也可以在控制面板中用BDE Administrator管理应用程序运行过程中还可以通过Session不可见控件实现动态管理。不过对于ODBC数据源一旦建立了用户DSN或系统DSN那么BDE就会自动建立一个别名别名的名称和DSN的名称是一样的。同样的如果你删除了DSN那么BDE就会删除相应的别名。这就是说在De lphi中操作ODBC数据源只需要关心DSN的设置就可以了。
3、 Itall Shield
Delphi附带的Itall Shield不带能够完成BDE的安装工作而且完全支持安装程序对注册表的修改只要简单地在Make RegistryChanges选项下输入需要添加的注册表项目就可以实现在应用程序安装时修改注册表的目的。结合前面介绍的ODBC数据源的设置原理利用这个功能就可以方便地实现在安装时进行DSN的初始设置。
4、 Delphi的注册表控件
Delphi的TRegistry提供了操作Windows注册表的界面可以在程序中读写注册表中的数据。如果不使用ItallShield通过
TRegistry也可以完成DSN的初始设置。本文仅介绍利用TRegistry实现对DSN的修改而不介绍DSN的完整设置但根据上述原理和下面的程序代码要做到这一点不会有任何问题。
“De lph i 5数据库应用中ODBC数据源的自动管理”文档源于网络本人编辑整理。本着保护作者知识产权的原则仅供学习交流请勿商用。如有侵犯作者权益请作者留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载
云基成立于2020年,目前主要提供高防海内外独立服务器用户,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)、国内高防服务器(广州移动、北京多线、石家庄BGP、保定联通、扬州BGP、厦门BGP、厦门电信、...
PIGYun发布了九月份及中秋节特惠活动,提供8折优惠码,本月商家主推中国香港和韩国机房,优惠后最低韩国每月14元/中国香港每月19元起。这是一家成立于2019年的国人商家,提供中国香港、韩国和美国等地区机房VPS主机,基于KVM架构,采用SSD硬盘,CN2+BGP线路(美国为CUVIP-AS9929、GIA等)。下面列出两款主机配置信息。机房:中国香港CPU:1core内存:1GB硬盘:10GB...
RAKsmart 商家从原本只有专注于独立服务器后看到产品线比较单薄,后来陆续有增加站群服务器、高防服务器、VPS主机,以及现在也有在新增云服务器、裸机云服务器等等。机房也有增加到拥有洛杉矶、圣何塞、日本、韩国、中国香港等多个机房。在年前也有介绍到RAKsmart商家有提供年付129元的云服务器套餐,年后我们看到居然再次刷新年付云服务器低价格。我们看到云服务器低至年79元,如果有需要便宜云服务器的...