完成数据批处理

上传人:人*** 文档编号:563745201 上传时间:2022-11-22 格式:DOCX 页数:3 大小:13.81KB
返回 下载 相关 举报
完成数据批处理_第1页
第1页 / 共3页
完成数据批处理_第2页
第2页 / 共3页
完成数据批处理_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《完成数据批处理》由会员分享,可在线阅读,更多相关《完成数据批处理(3页珍藏版)》请在金锄头文库上搜索。

1、完成数据批处理在 数 据 库 应 用 系 统 中 , 常 常 要 对数 据 进 行成 批 的如 追 加 、 删 除、更改等操作,这种批量操作在专门的数据库开发工具如 VFP中用APPENDePY命令带上相 应 的命令 子 句就能 轻易完 成 。但在 其 它开 发 工具中 并 没有类似的命 令 ,而 是 提 供 能 完成 类 似 功 能 的控 件 或 对 象 , 如在 PowerBuilder 中 就是利用Pipe Line ( 数 据 管 道 ) 来完成 两个或 同构或 不同 构的表 之间 的数 据批处 理。本 文要 介 绍 的 是 Delphi 中用 来完成 数据 批处理 任务的 组件 TB

2、atc hMoveoT BatchMove 组件能够:将 个 数 据 集 中 的 数 据 追 加 到 个 表 中 。 . 从 个 表 中删 除 满 足 条 件的 记 录 。.按 旧 表 结 构 生 成 个 新 表 , 若 欲 生 成 的 新 表 已 存 在 , 则 覆 盖。具体 的 操 作要 通 过 设 置 TBatchMove 的 Mode 属性 后 再 调 用 Execute 方 法来 完 成。 为举例说明问题,我们在别名数据库DBDEMS中先创建两个dBase格式 的 表 Test l. dbf和 Test2. dbf。 二 者 的 结 构 如 下 表 :Testl.dbfName CC

3、ode CTest2.dbf10NameC3CodeC103其中表 Test2. dbf 在字 段 code 上 建 立 有 唯索引。 同 时 假 设 表 单中 已 有 两 个TABLE控 件 Tsource 和ITdest 和 个 TbatchMove 组件 batchmoveloTsource 和 Tdest 的 DatabaseName 属性均设 为 DBDEMOSobatchmovel 的 source 属 性 设 为 Tsource , destination 属 性 设 为 Tdest 。在使用 TbatchMove 组 件 时 ,必 须牢 记 : 所有 的 操 作都 是 以 源表

4、 为 标准针对目的 表 进 行 的 , 下 面 就 分 别 举 例 说 明 TbatchMove 的 各 种 操 作 模 式 : batAppend 追 加模 式 将 源表 中 的 数据 追 加到 目 的 表中 , 目 的表 必须事先存在。这是缺省 模式。 batchmovel. sourceTsource batchmovel. destinationTdest2 batchmovel.Mode:batCopy; batchmovel.Execute batUpdate 更新模式用源表中匹配 目的表的 记录替换 目的表中 的相应记录。 目的 表 必须 事 先存 在且 有 己定 义的 索 引用

5、 来 匹配 源表 中的记=习 习飞。Tdest.IndexFieldN ames:二codebatchmovel. source Tsourcebatchmovel. destinationTdest batchmovel.Mode: batU pdate;batchmovel.Execute果源 表中有 与目 的表匹 配的记 否则,直接追加到目的表中。目的源表 中 的记 录。 batAppendUpdate 追加更新模式如 录,则替换目的表记录 表必须事先存在且有 已定 义的 索 引用 来 匹配Tdest.IndexFiel dN ames:二codebatchmovel. source T

6、sourcebatchmovel. destinationTdest batchmovel.Mode:batAppendUpdate;batchmovel.Execute batCopy 拷 贝模 式 按源 表 结 构生 成 新 表, 源 表中 的 数 据同 时 拷 贝到目的新表中。如果要生成的新表己存在,则覆盖。/ 按 Test l. dbf生 成新表 xxx.dbf/ 如 果 不 指定 扩 展 名dbf , 生 成 的 新 表 将 是 Paradox 格式的 xxx.db 。Tdest. TableName:二xxx.dbf batchmovel. sourceTsource batchm

7、ovel. destinationTdest batchmovel.Mode:batCopy; batchmovel.ExecutebatDelete 删 除模 式 删 除目 的 表 中与 源 表匹 配 的 记录 。 目 的表 必须事先存在且 有 己定 义的 索 引用 来 匹配 源表 中 的记 录。Tdest.IndexFieldN ames:二codebatchmovel. source Tsource batchmovel. destination Tdest batchmovel.Mode: batDeletebatchmovel.ExecuteTBatchMove 还有过指定个 重 要

8、 属 性 ChangedTableName , 在 实 际 运 用 中 , 通ChangedTableName 属 性 可 以 创 建 个 Paradox 表, 该 表 用 来 保 存 目 的 表 中 被 更 改 数 据 的 原 始 备 份, 有 了这 个 备 份表 就 可 以确 保 恢复 目 的 表 中的 数 据 。顺 便 提 句 , 如 果 要 删 除 某 个 表 中 的 全 部 记 录 , 可 以 采 用 Table 组 件 的EmptyTable 方法 , 例 如 Tdest.EmptyTable 将 清 空 Tdest 所指定的表 test2. dbf0本 文 中 是 以 同 构 的 dbf 表 进 行 的 示 例 , 在 实 际 运 用 中 , 源 表 和 目的表可能同购,也可能异构,异构时,Delphi的BDE会自动进行类 型和长度 上的 转 换 , 具体类型间的关系可以有关BD啲帮助。本文中各种操作模式的实际结果均可 以 从 Delphi 的 DatabaseDesktop 中查看到。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号