说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

在Delphi中使用DBF数据

HTML文档下载 WORD文档下载 PDF文档下载
在Delphi中使用DBF数据

---- Delphi是美国Inprise 公司开发的功能强大的Windows 应用程序开发工具。她是可视化应用程序开发环境、可重用性面向对象编程语言、快速编译器和数据库技术的完美结合。由于Delphi具有运行速度快、功能强大、易于学习和使用且开发迅速等特点,并支持XML和HTML,支持 Web 和Internet的开发,一直受到广大用户的喜爱。

---- 国内PC机上使用最普及历史最长的数据库是DBF格式的数据库,即是dBASE II、dBASE III和FoxPro中使用的数据库格式。为了充分利用已有的数据库资源,并能在Delphi环境下开发功能更强的应用软件,本文将讨论如何在Delphi中使用DBF数据库(数据表)以及其转换的方法。

---- 一、直接使用DBF格式的数据库

---- 若将DBF格式的数据库或表作为应用程序开发中的数据资源,应在Delphi中的"BDE Administrator"数据库引擎中用DBASE或FOXPRO作为配置参数,这样就可以在Delphi中修改和直接访问DBF数据,参见BDE配置工具图(略)。

---- 二、转换成Delphi环境中的Paradox数据表

---- Delphi开发工具允许用户创建和访问Paradox 和Local InterBase等服务器的数据库应用,这里我们讨论将DBF转换成Paradox 数据库的方法。

---- 1、使用数据库桌面Database Desktop --Delphi提供的辅助工具之一

---- 用Database Desktop(参见图2)的复制功能来实现转换,其操作过程如下: 1)选用菜单"Tools/Utilities/Copy…",将出现"Copy"对话框,让用户指定将要转换的DBF源文件,这里我们选择了student.dbf文件,并按下"OK"键。

---- 2)这时,出现"Copy to" 对话框,选择目标文件名或在文件名编辑框里输入一个新目标文件名,并给出Paradox数据文件的扩展名.db。

---- 3)然后选择"Copy"按钮。

---- 此时,Database Desktop将DBF数据student.dbf转换成了Paradox 的student.db数据。转换过程中,其数据结构的字段类型变化参照表1。

---- 表1:

在DBF的字段类型 转换成Paradox字段类型

------------------------------------------

C Alpha

F(浮点型) Number

N Number

L Logical

D Date

Memo Memo

OLE OLE

Binary Graphic

-----------------------------------------

---- Paradox 确保从DBF备注字段转换来的数值是文本格式,否则如含有其他类型的数据,就应该使用Add功能添加该备注字段到相应的Paradox BLOB类型字段中。

---- 同样,也可以将Paradox数据库表转换成DBF格式,其字段类型将按参照表2自动地转化。如果生成的DBF不含有索引文件、浮点类型字段和备注字段,则Database Desktop 将产生一个dBASE III数据库表;如果生成的DBF表含有OLE或二进制字段类型,则Database Desktop 将产生Windows的DBF数据库表;否则将生成一个dBASE IV数据库表。

---- 表2:

-----------------------------------------------------

在Paradox中的字段类型 转换成DBF字段类型 备注

----------------------------------------------------

Alpha C

Number N(20.4)

Money N(20.4)

Short N(6.0)

Long Integer N(11.0)

BCD N(20.4)

Date D

Time C(8)

Timestamp C(30)

Memo Memo

Formatted Memo Memo 格式丢失

Graphic Binary

OLE OLE

Logical Logical

Autoincrement Number

Binary Memo 不能显示数据

Bytes Memo 不能显示数据

-----------------------------------------------------

---- 2、使用数据管道Datapump --Delphi提供的辅助工具之一

---- 用数据管道的移动功能可以实现DBF数据库表转换成Paradox的数据,其操作过程如下:

---- 1)使用Borland数据库引擎BDE,为源数据库和目标数据库各建立一个别名;

---- 2)启动数据管道Data Pump,在其向导程序中指定源数据库的别名或路径;

---- 3)指定目标数据库的别名;

---- 4)从源数据库中选择要移动的数据表(可以选择一个或多个),这里我们选择student.dbf;

---- 5)通过按钮"Modify Mapping Information for Selected Item",修改数据表的结构信息,以适应目标数据表的需求。当选择此按钮,进入"Modify Fields"对话框,从而可以逐一选择DBF数据表的字段名,并修改成所需的Paradox 数据类型,以及目标数据库中不支持的字段类型、索引和数据的完整性等。

---- 6)单击"Upsize"按钮,使DBF数据表移动到Paradox 。

---- 7)浏览数据移动结果,若有不满意之处,可以在目标数据表中直接修改;或者观察"Report"对话框显示的移动过程的详细记载,若满足需求,击"Write a copy of this report to file"按钮,输入文件名student.db而保存转换的结果。

---- 除了DBF和Paradox 数据之外,Data Pump也可以应用到其他的PC数据库或SQL Server数据库之间的转换。

---- 3、使用Delphi数据访问部件(Data Access)中的BatchMove控件 BatchMove控件具有对成批的记录、整个数据库表进行移动、拷贝和删除操作,但是它不能复制源数据文件的索引和纠错规则等。将DBF 数据库转换成Paradox的数据表操作过程如下:

---- 1)在Database Desktop 中建立Paradox 数据表student.db 的表结构,使其字段顺序等与DBF格式的student.dbf相对应。

---- 2)在Delphi数据访问部件Data Access中选择两个控件Table,并分别将Table1和Table2连接到源数据文件student.dbf 和目标文件student.db。

---- 3)在Delphi数据访问部件Data Access中选择控件BatchMove放在一个Form上。

---- 4)将BatchMove的Mode属性设置为batCopy(功能:复制源文件数据到目标文件中)。

---- 5)设置Source 属性为Table1,Destination属性为 Table2。

---- 6)用鼠标右击控件BatchMove,选择弹出式菜单中的"Execute"项,此时,执行复制功能,即将DBF数据库转换成Paradox 数据表。

---- 以上仅向同仁交流我在Delphi编程中的一点体会,且希望在编程过程中互通经验,共振我国软件之兴。

C语言实现堆栈stack操作 C语言建立和遍历二叉树 C语言冒泡排序法演示代码 C语言实现堆排序(Heap Sort) jQuery Ajax以JSON格式传递结果数据 微软称为WP8开发的应用不兼容WP7手机 WP8开发者必读 关于WP8开发者程序开发语言选择倾向的问题 强大的C#随机字符串生成器 C#上传文件到WEB服务器 WebClient的超时设置 MySQL备份脚本大全 c#对rar或zip文件进行压缩解压缩 c#采用递归非递归两种方式遍历目录下所有文件 使用DataContractJsonSerializer进行JSON序列化的JSONHelper类 宏病毒ToDOLE及专杀工具 如何构建和运行基于cocos2d的HelloWorld程序 C# .net 2.0 以Gmail发送Smtp邮件 ASP.NET优化性能方法之一:禁用调试模式 开源SMTP和POP3邮件服务器 三星:在专利上不会和苹果妥协 不止谷歌,微软也有自己的眼镜计划?! Windows 8商店应用总数突破20000大关 硝烟弥漫:三星起诉苹果最新iPad、iPod侵权 效仿Google Facebook欲整合Instagram用户数据 与苹果全面竞争?传微软明年推Xbox机顶盒 微软Ralph Haupter:WP8即将在中国上市 开发者黄金时代来临 Paul Graham:Y Combinator创始人成长轨迹 我们需要强密码吗? 为了改变?英特尔CEO宣布将于明年5月辞职 传苹果下一代Mac OS中将整合Siri及地图服务 递归调用FindFirstFile、FindNextFile、FindClose的问题 页面调度有关的课程设计 关于client端与server端的连接问题 请问能不能在不同用户登陆的情况来决定服务A是否启动。 Textbox如何禁止它记忆以前曾经输入过的值? 我的XP的CPU经常占用90%以上,高手指点. 安装完win2000,又安装了天网防火墙,再安装SQL server 2000,快完成时启动服务警告“无法定位程序输入点” 急招深圳周边(含深圳).Net程序员 ??qustion Laney(6吨大肥猫) 快来啊^@^ 有关struts的<html:text>标签的问题!!!!!!!!!!!!!!!!!!!!!!! 为了考试挑灯夜读,遇到一个菜问题请大家帮忙! 哪位高手帮帮我!时间紧急! 关于还原精灵转储后win98不能启动的问题,请指教!~ 有几张漂亮图片,看看你的计算机是怎么累死的 求C++算法代码。 怎么实现在IE中将查找到的关键字用红色标记指示出来? 求C++算法代码。 请问哪里可以下载Numega DevPartenr Studio 测试工具 ㊣㊣ 什么也不多说了,帮忙给解决这个问题吧, 先多谢了!! ㊣㊣ 有个小小问题 寻找监测某端口的数据流量软件 都市幽灵·里面一定有宝藏 非常奇怪:为什么超链接无效? 显示异常 下个星期开始到新公司了,请大家给点经验,好吗 急!jsp+mysql,急寻blob输出方法!!! 修改记录问题 StringGrid的自画 导出 救命呀,关于XP的激活问题. 语句 请问有什么好的串口调试工具,可以模拟串口发送数据的??????? 简单问题高分相送 MessageBox.Show 方法需要什么样的名空间 使用ghost硬盘刻录硬盘怎么区分源盘和目标盘,请大虾详细说说,在线等 概念性问题(没办法,太笨了,见笑了) vf8支持动态SQL吗? 请问:如何单独安装BDE? 因为你无权连接数据库服务器?? 大家看看一个非常专业的商贸企业管理软件,要源码好商量! 如何清除Image中的图片? 数据库查询一个奇怪问题 关于记事本程序的编写??? 揭贴后的话(告诉大家你的问题解决的怎么样) 如何模拟串口发送数据 如何清除Image中的图片? 出售 .Net 自定义服务器端日历控件 *****加班熬夜何时了,辛苦知多少,小楼昨夜又东风,女友不堪回首睡梦中***** VC中使用ACCESS数据库版本的问题? 有高手来看看这个EXCEPTION是怎么回事??????? 此题思路?A是什么? 填四大名著《水浒传》中的人物 及时雨( )小旋风( )黑旋风( )智多星(  )豹子头( )神行太保(   )花和尚(  )行者(   )青面兽(  )浪里白头(   ) 柱字开头的成语?马上要 这两题思路是什么啊 水浒传主要人物是;智多星——及时雨——黑旋风—— 寓言家克雷洛夫说过:现实是此岸,理想是彼岸,中间隔着湍急的河流,行动则是架在河上的桥梁.以上材料为题材,写一篇不少于1000字的议论文 车子被大雨浸泡了,能否获得保险理赔? "及时雨会神行太保,黑旋风斗浪里白条"38回涉及到那四条好汉快长板桥头杀气生,横枪立马眼圆睁,一声好似轰雷震,独退曹家百万兵.这局句是在说谁? 苏教版七年级上册数学测试题(有答案) 发生11·15事件,提醒我了,出现这种火灾、台风、暴雨一类的灾害后,怎么做才能快速理赔呢? 水浒传 及时雨 神行太保 黑旋风 浪里白条分别是谁 带柱的成语(越多越好) 商务英语和财经管理你们推荐哪个 义勇军进行曲在当时起到了什么作用 请问带"梁"和带"柱"的成语? 一元二次题目当m为何值时,二次三项式2x^2 +6x-3m1在实数范围内能分解2不能分解3能分解成一个完全平方式 深圳经济特区建立30年来取得重大成就的主要原因有哪些?根本原因是什么? 根据范进中举对下联,上联:三十五载梦想,一朝成真,喜极而疯,看尽世态炎凉. 句子:“突然雷声大作,先是漂下几滴雨点,接着水如柱.”哪两个字错了?并写出正确的. Everyone likes eating ice-cream.Di you every think __1__ where it came from?Who make the first ice-cream?__2___ knows the exact time when it began.Some people said it began __3___ of years ago.Modern(现代的) ice cream first appeared(出现) in Ita 不戚戚于贫贱不汲汲于富贵出自哪篇课文作者是谁 为什么雷声大雨就大 英语完形求解1.She is very good at dance,___everybody knows2,___is known to everybody,the moon travels round the earth once every month3.Have you seen the Titanic,____leading actor is world famous?4.He lives in a hotel,____is only five minute's 证明向量空间必定含有零向量 突然雷声大作,先是飘下几滴雨点,接着雨如柱.有什么错别字? 翻译 顾吾念之,强秦之所以不敢加兵于赵者,徒以吾两人在也 若向量空间含有向量a,则必定含有-a? 夫赵强而燕弱...故燕王欲结于君 翻译 假使我们不去打仗和后面的义勇军进行曲表达的相同的主题是什么? 上联为 故乡尴尬逢闰土 下联为-------于勒 在棱长为a的正方体正方体ABCD-A1B1C1D1中,A到平面BB1D1D的距离为____,AA1到平面BB1D1D的距离为_____ . 假使我们不去打仗 和 义勇军进行曲 二者在写法上又有什么不同? 《故乡》中造成闰土麻木的主要原因是什么? 一元二次问题X^4-X^2-6=0 水浒传中宋江是谁 吴用是谁 柴进是谁 豹子头是谁 花和尚是谁 黑旋风是谁 根据图中五个汉字的不同方位,写出三个成语 上:调 下:腔 左:击 右:声 中:柱上:调 下:腔 左:击 右:声 中:柱 宇宙没有形成的时候是什么样子的? 福州化学补习提分快哦?要可靠点的? 求…深圳经济特区成立30周年,写一篇大约400字的论文!从深圳经济特区成立的时间,30周年来的成就!地理优势!自己的的感想!及对深圳的建议!这5个方面写一篇400字的论文!十分感谢!能够有更长 宇宙在最早的时候是什么样子的?是不是什么都没?是不是哪个时候连空间也没?时间怎么解释 是不是要参考下《时间简史》霍金提出的解释是什么意思? 福州英语补习提分快哦?要可靠点的? 求一篇初中地理论文,只要400字就行 颛顼简介 正方体ABCD-A1B1C1D1中,棱长为a,E是AA1的中点,在对角面BB1D1D上取一点M,使AM+ME最小,其最小值为要过程 谢谢 含有“柱”字的成语?含有“柱”字的成语是什么啊?想了很久都没想出来也~ 宇宙未诞生时是什么样子的?(不要特别复杂的理论) 福州一对一英语补习比较好呢?谁比较懂, 英语翻译 颛顼 介绍 英语翻译秦应候行千金为反间于赵,曰:秦之所畏,独赵括耳的翻译 含有“柱”“梁”的成语 仿写现实是此岸,理想是彼岸,中间隔着湍急的河流,行动则是架在川上的桥梁 能概括 在上的那边全诗中心 福州一对一英语补习哪家好?懂这方便的人来讲下吧? 狮吼虎啸 求狮吼声和虎啸声.能听就行.谢过 颛顼介绍 请问福州英语补习哪家好? “有的声音洪大,听起来如虎啸狮吼.”这句话让我联想到什么成语?(至少两个) . 人教版语文五年级下册7单元的生字词 福州英语补习哪里好? 80克月饼有多大 联合国对黎巴嫩北部教派冲突深表不安24省区市前三季度城镇居民收入出炉 教科书免费使用作品时代终结 汇编者将美国主持人就歧视性言论道歉土耳其举行阅兵式庆祝建国90周年国际原子能机构与伊朗发表联合声明称对“今日中国 中国电影周”于曼谷开幕国新办副主任崔玉英谈德国“中国西藏文河北宣化600年古城墙被开凿成窑洞 综述:反击霸王条款 消保法修改强化经美国消费者信心10月份大跌美国8月份企业库存环比上升0.3%韩国否认容忍日本推进解禁集体自卫权北京58项措施控制机动车排污 201埃及穆兄会领袖庭审 3名法官开审前请美国9月商品零售额环比下降0.1%埃及穆兄会领导人案庭审法官辞职一武装直升机在莫斯科市区坠毁走近维纳斯故乡――访塞浦路斯能源商工泰国会将二读审议特赦条例草案埃及穆兄会领袖庭审 3名法官开审前请滴滴上线 人车不符投诉功能85后军官捐造血干细胞救花季少女携手投资宝安共建高端“汽车港”19家市场电子秤首检合格率低于80%民警加嫌犯微信 约见将其抓获撤出大明路,汽贸企业纷纷“东南飞”今日 天气省信用再担保获AAA信用评级立时代潮头 发思想先声中国将推动交通用能“绿色革命”宝安区首届艺术创客节举行“清宫帝后印玺展”在扬州开幕深圳打造首家农业文创综合体罗湖东湖商会 义工队昨成立念好“腾转去补”四字诀 推动溧水转型“查违公众开放日”活动营造全民参与氛江苏发布实施税务信息化系统检测规范遇到公交地铁色狼 该如何应对“透明厨房”让食客看到餐馆后厨烹饪烂漫花海 初夏绽放魔咒!渣叔杯赛拿不了冠军? 5次进决
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘