网站首页 > 技术教程 正文
xBase是所有源自原始dBase数据库格式(.dbf)的数据库的通用术语。该列表包括Visual FoxPro、Clipper、dBase III、dBase IV等。这些数据库被非正式地称为dBase克隆,因为它们是dBase的直接后代或模仿者。
xBase数据库将大量格式化数据以结构化形式存储在.dbf数据文件中。在类似dBase的数据库中,.dbf文件存储一个表,其中保留了表描述,字段描述符和记录。类似dBase的现代数据库还具有用于大型文本字段(备忘录)、命令、过程、备份等的文件。
有各种各样的数据库引擎可以读取和操作DBF文件中的数据,但是它们都不了解xBase数据库的所有格式——这些数据库引擎中的大多数都可以与xBase系列的一种或两种方言进行交互。与其他现有解决方案不同,UniDAC中的Delphi数据访问提供程序TDBFUniProvider提供了一种引擎,该引擎可以理解许多类似dBase的数据库中的DBF文件。
TDBFUniProvider提供对xBase数据库的直接访问,并支持所有dBase本机数据类型(字符、数字、逻辑、数据、备忘录)。它用作SQL引擎,对数据库文件执行命令。项目中的Delphi代码被编译成可执行文件,不需要任何其他外部文件即可访问和操作DBF文件中的数据。
用于访问xBase数据库文件的UniDAC Delphi组件支持多种数据库文件格式:dBase III、dBase IV、dBase V、dBase VII、FoxPro2、Visual FoxPro、Clipper、CodeBase、HiPer-Six。除了允许开发人员使用标准的SQL-92语法外,它还提供了一种快速的方法来重建表并删除已删除的记录,以减小数据库文件的大小。
创建示例Delphi应用程序以访问xBase数据库
我们将创建一个简单的Delphi应用程序,该应用程序将以Visual FoxPro格式连接到数据库,并在单击“显示”按钮时显示表中的记录。
1、在“工具选项板”中找到TUniConnection、TUniQuery、TUniDataSource、TDBFUniProvider、TDBGrid和TButton组件,并将它们放在表单上。
2、双击表单上的UniConnection1组件。切换到“选项”选项卡,然后将“直接”设置为True。
3、返回到“连接”选项卡,选择“DBF”作为提供程序,然后输入计算机上Visual FoxPro(或任何其他xBase数据库)的路径。单击连接。如果一切顺利,红色圆圈将变为绿色。
4、在UniDataSource1中,将DataSet属性设置为UniQuery1。
5、选择DBGrid1并将DataSource属性设置为UniDataSource1。
6、选择UniQuery1组件并将Connection属性设置为UniConnection1,然后双击该组件并输入SQL语句。单击确定。
7、将按钮的“标题”属性更改为“在对象检查器中显示”。双击按钮,切换到“代码”选项卡并添加UniQuery1.Open; 到OnClick事件处理程序代码。
8、按F9编译并运行您的应用程序。如果程序编译没有错误,则应该看到已编译的表单应用程序。单击显示以获取并查看Visual FoxPro表中的数据。
检索损坏的数据和元数据
xBase方言历史悠久,.dbf文件中的字段包含不受支持的类型的数据的情况并不罕见。要解决任何不受支持的数据类型的问题,UniDAC提供了两个选项:IgnoreDataErrors和IgnoreMetaDataErrors。前一个选项在打开DBF表时强制UniDAC忽略损坏的数据错误,而后一个选项使UniDAC忽略元数据错误:当两个选项都设置为True时,将跳过损坏的数据,并正确地检索其他数据。
另一个功能是当您不完全了解DBF文件的格式时(DBFFormat选项中的dfAuto值),可以自动确定xBase数据库的方言。
支持的目标平台
UniDAC支持多个目标平台:您可以创建一个访问DBF数据库的应用程序,用于:
- Windows,32位和64位
- macOS,32位和64位
- iOS,32位和64位
- Android,32位和64位
- Linux,32位和64位
- 上一篇: 共享DBF加锁 #vfp
- 下一篇: PDF文件这么简单就能转换成其他格式?!不用吃惊,就是如此强大
猜你喜欢
- 2024-11-18 日立EUB-5500彩超故障维修(仁成医疗)
- 2024-11-18 魔兽世界怀旧服:TBC战士 P1单刷老虎 加尔达成,分享下心得
- 2024-11-18 《天国拯救》控制台MOD使用教程秘籍代码大全
- 2024-11-18 升级 | 硬核的数据库支持与恢复能力,效率源DBF6300凭实力圈粉
- 2024-11-18 DBV命令行工具检测坏块
- 2024-11-18 ArcMap中常见的错误及解决方法
- 2024-11-18 每天学点Arcgis实用操作:如何批量核查gis规划情况?
- 2024-11-18 解决软件弹出对话框界面,内容显示不全问题(以OptiBPM为例)
- 2024-11-18 一起来学习Oracle的备份恢复基础吧-2
- 2024-11-18 一文看懂如何跨版本迁移Oracle数据库
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)