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

在Delphi动态生成定义数据库

HTML文档下载 WORD文档下载 PDF文档下载
在Delphi动态生成定义数据库

在开发通用工资管理等应用数据库管理系统时

预先定义好数据库的结构

就不能保证应用系统的通用性。不同的单位需要不同的数据库

为了减少程序的开发量

并保证程序的通用性

就必须在程序运行中根据实际情况定义所需要的数据库。

在Delphi开发环境中

定义数据库通常需要运行Data Base Desktop。在程序运行中使用组件TTable也可以根据需要定义和修改数据库的结构。

定义标准数据库

定义数据库时数据库文件信息和数据库结构信息是必需的

如数据库文件的完整路径

数据库类型

数据库的字段名、类型、长度等。在Delphi程序中可以定义三种标准类型的数据库

DBASE数据库、Paradox数据库、ASCII数据库。

下面给出的过程已在WIN95Delphi3.0C/S下运行通

过。

procedure ZldcreateTable;

var

zldT:TTable;

begin

zldT:=TTable.Create(Self);

with zldT do

begin

DatabaseName:='DBDEMOS';{预定义的别名数据库工作区名}

TableName:='ZLDDBASE';{将定义的数据库名}

TableType:=ttDbase;{数据库类型

可为ttParadox、ttASCII、ttDbase}

with FieldDefs do{数据库结构信息}

begin

Clear;

Add('ZLS'

ftInteger

0

false);

Add('ZLD'

ftBoolean

0

false);

Add('ZEZ'

ftString

10

false);

Add('XL'

ftDate

0

false);

{....} //------Add Other Fields Here

end;

with IndexDefs do{索引文件信息}

begin

Clear;

Add('Primary'

'ZEZ'

[ixPrimary

ixUnique]);

{....} ////------Add Other Indexes Here

end;

CreateTable; //---- dynamically Create Table;

end;

end;

通过以上方法建立数据库

如果已经存在同名数据库

将被覆盖

数据将全部丢失。

当修改一个数据库的结构时

也可以利用TTable的方法CreateTable。先打开欲修改的数据库

取得该数据库的结构信息

再对其修改

然后用修改后的结构信息重新建立一个新数据库

再将原数据库中相同的列写入新数据库中

删除原数据库

改新数据库名为原数据库名即可。

Evernote更新Android SDK:新增商务服务并拆分“印象笔记” 主流编译器对C++11的支持现状比较 GCC 4.8发布,提升对C++11的支持 英国政府下令首选开源软件 为何美国IaaS收购被引爆?基于IaaS的四个误解和四个猜想 Kinect SDK v1.7迎来重大更新 如何激励同事编写单元测试? 谷歌GCE vs. 亚马逊EC2:快源于谷歌本有的底蕴 不要责怪开源技术 它是无辜的 短命:微软将于2014年停止对WP8系统支持 Native和Web过时了,企业级移动开发流行用Hybrid App 与EverNote竞争?谷歌Google Keep浮出水面 又一次跨越:著名3D游戏引擎Unity版本更新 Feedly团队:自研后端平台或将开源 StackMob的诱惑:16小时,山寨一款移动App “云”筹帷幄 开发者必知的5大SaaS在线服务工具 超350个政府项目托管在GitHub 政府开源会成主流? Kinect for Windows SDK 1.7正式发布,支持3D建模 SafeNet与风河系统联手推出VxWorks嵌入式系统软件货币化方案 Windows Server 2012中的动态负载均衡 Google等互联网公司将成为创新中心? 在Hadoop的战争中 MapR获新一轮3000万美元融资 初创公司DNNresearch:谷歌科技帝国的新“基石” 创业了,我们该如何起名? 乐视网联手富士康推新盒子C1S “0+290元”新浪微博发售 吸引开发者:只要开发新应用 微软便奖100美元 PaintCode - 将矢量图转化为Objective-C代码的开发神器 苹果发布iOS 6.1.3 封杀evasi0n越狱所用漏洞 [API快讯] Google开放实时协作API 58同城开源轻量级Java Web框架 Argo 初创公司AppNeta:4轮融资,4780万美元 寻求:《com原理与应用》的电子版下载? 关于页面刷新的问题? 关于网络流量计算,紧急,在线等待,高手请指教 寻mp3控件,要能读取其tag信息. 请问如何将IE分成两部分,左边是一个APPLET写的tree,右边响应树中节点的事件(链接页面)? 如何才能得到本程序的cpu占有率?而不是总的cpu占有率? 如何编程枚举网上邻居 课件招标!!凡是我觉的有帮助的回答都给分!分不够可以再加!!先来100分!! 谁是高手?在线等待,立马给分! 发邮件问题 单挑高手:一个可变的字符串变量记录着类名(classname),怎么样根据这个符串的值创建所含信息的类实例?? 大放分!!!即放即給 一个在桌面上产生雪花的小程序,请帮忙修改。 请教一个程序速度的问题 辽宁沈阳的凯夫集团有知道情况的么? 好书是那本? 再请saucer(思归, MS .NET MVP),你帮忙得问题用你的方法解决了一半,还差一点。 关于界面控键问题! 为什么在设计时控件的属性不可以修改?在线等候 我的ROOT口令忘了,我该怎么办? 在RedHat8.0上安装Kylix3出现的问题?(关于文件包glibc检查出错)??????? VSS: Unable to check out the file <file> because it is already checked out. 一个暴难问题,关于两台电脑通过一个modem上网的问题。谢谢。 谁是高手,立马给分! 如何使ListControl 内容排序? 无法安装sql2000! 关于inport()和outport()的问题! 哪位仁兄手上有灰度图像的傅立叶变换和反变换的程序代码? 请教高手!死机问题 如何可以让网页内容置中显示,不管客户端的分辨率是多少? 大家注意Acrobat 5与BDE有冲突!! 怎样向客户端输出数据 如何判断一个变量是否定义过?使用if(var)的方法不行,报错 Interbase树形结构和递归调用问题,高手请进!!急!!!! 有谁知道哪有pb8.0汉化版出售。本人是个十足的英语盲! Oracle8 的blob字段,BDE读取报“Invalid Field Type”的错误 Interbase树形结构和递归调用问题,高手请进!!急!!!! 如何选出表中相同的纪录? 下面这些对编程风格的说法是否正确? Interbase树形结构和递归调用问题,高手请进!!急!!!! 请教dos中有没有类似notify的命令用于邮件通知 java有没有RTTI(runtime type information) 在DOS下开发软件,应该如何调用扩展内存? 高分求:Antechinus C# Editor4.2c和JavaScript Editor的注册码! 想自己做个字典软件,但是没有词库 怎样做个链接?链接邮件地址。 如何在工具栏statusbar的右下角(最后一个panel里)做一个走动的时钟 大家讨论一下开发JSP Web站点用什么工具比较好? 我想编一个网页管理软件,有如下要求。。。 大家帮看一下,加注释的一句是什么意思 高分求救!!有关数据同步!! 电信诈骗出新花样 装主刀医生发短信索情侣喝多了吵架动手 误伤隔壁桌客人致陈宝成完整录像 还原陈宝成被刑拘事情宁波一名男子救跳江自杀女孩 做完好事宁波一辆工程车倒下40多吨渣土差点活酒店司机撞伤人被判全责 伤者丈夫上门超级高铁时速1223公里 成本仅为高保安曾捐肾给工友治病 靠名声骗钱数十法官设计引出老板帮助小伙拿到被拖欠工宁波外海一名柬埔寨籍船长天热中暑半身煤气瓶突然爆炸 两人受伤严重被烧伤进文革红卫兵向受害者道歉 沉重忏悔罪行二代身份证存缺陷 挂失后还能被使用台湾失智老夫妻 演绎我的世界只有你的网络名人共守七条底线 微博大V传播社印度潜艇爆炸18人被困 俄军工产品质浙商解救妻女牵出万人传销团伙 涉案金新手湖州高速上开路虎飙到196码被记潜水打麻将求清凉 交流仅仅靠手势北京群体自杀事件伤者身着“哈尔滨铁路男子干活时突然心慌 飞奔回家救下面临市民免费学才艺经济“去地产化”非易事我省将评选“诚信画廊”朱树诚先生A股患上“一日游综合征”520 “我爱你”告白惊现长沙街头大试完还有礼《蒙娜丽莎的微笑》将做手机表情符号马刺35分血洗雷霆《幻想曲》戛纳首映推出汉兰达店庆版《背影》被逐出教材再遭误传象牙塔外的路,走得很辛苦周日彩虹跑,High行十公里为了回家,所以旅行新车越来越向年轻人靠近小型SUV接棒保时捷卡宴从《归来》看“眼泪叙事”乐购节全线放价湖湘建筑定将诞生惊世之作苏亚雷斯受伤或影响世界杯
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘