社区
Delphi
帖子详情
BatchMove
soaringsouth
2003-02-13 03:39:44
哪位老大能提供有关BatchMove的例子?
...全文
96
11
打赏
收藏
BatchMove
哪位老大能提供有关BatchMove的例子?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
linazhu
2003-04-01
打赏
举报
回复
gz
yczyk
2003-02-13
打赏
举报
回复
楼上各位说的有理,那东西是个好东西!
line
2003-02-13
打赏
举报
回复
顺便提一下,请注意异常,最好在外面用TRY。。。EXCEPT。。。
line
2003-02-13
打赏
举报
回复
很简单,设定SOURCE及DESTINATION两个表,当然事先你得用BDE连接好,最后来个执行:batchmove1.execute
请注意一个:你要备份的表是以什么形式,如覆盖还是添加
lazywolf
2003-02-13
打赏
举报
回复
//SourceTableStr:Tquery;
TempTable:=TTable.create(nil);
TempTable.tablename:=DescTableStr;
TranData:=Tbatchmove.create(nil);
with TranData do
begin
Source:=SourceTableStr;
Destination:=TempTable;
mode:=batCopy; // mode:=batAppend;
Execute;
end;
soaringsouth
2003-02-13
打赏
举报
回复
在哪个文件夹下面?
soaringsouth
2003-02-13
打赏
举报
回复
谢谢,我以前用过,就是D6带的没有找到,懒得翻了,就出来问问。
anh
2003-02-13
打赏
举报
回复
你找一下,主要是batchmove1的几个重要的属性,你可以找出来试一下,不难的。
batchmove1.source
batchmove1.destination
batchmove1.Mode
batchmove1.Execute;
WWWWA
2003-02-13
打赏
举报
回复
batchmove1.source=table1;
batchmove1.destination=Table2 ;
batchmove1.Mode:=batAppend(copy\Update\batAppendUpdate);
batchmove1.Execute;
bluemeteor
2003-02-13
打赏
举报
回复
Delphi的安装目录下的DEMO里面就有非常好的程序
Drate
2003-02-13
打赏
举报
回复
DELPHI自带的例子就有的
如何备份、转换数据库??? 缘来一家人 2003-01-07 17:14 16
在 数 据 库 应 用 系 统 中, 常 常 要 对 数 据 进 行 成 批 的 如 追 加、 删 除、 更 改 等 操 作, 这 种 批 量 操 作 在 专 门 的 数 据 库 开 发 工 具 如VFP 中 用APPEND 、COPY 命 令 带 上 相 应 的 命 令 子 句 就 能 轻 易 完 成。 但 在 其 它 开 发 工 具 中 并 没 有 类 似 的 命 令, 而 是 提 供 能 完 成 类 似 功 能 的 控 件 或 对 象, 如 在PowerBuilder 中 就 是 利 用Pipe Line( 数 据 管 道) 来 完 成 两 个 或 同 构 或 不 同 构 的 表 之 间 的 数 据 批 处 理。 本 文 要 介 绍 的 是Delphi 中 用 来 完 成 数 据 批 处 理 任 务 的 组 件TBatchMove。TBatchMove 组 件 能 够:
(1)将 一 个 数 据 集 中 的 数 据 追 加 到 一 个 表 中。.
(2)从 一 个 表 中 删 除 满 足 条 件 的 记 录。
(3)按 旧 表 结 构 生 成 一 个 新 表, 若 欲 生 成 的 新 表 已 存 在, 则 覆 盖。
具 体 的 操 作 要 通 过 设 置TBatchMove 的Mode 属 性 后 再 调 用Execute 方 法 来 完 成。 为 举 例 说 明 问 题, 我 们 在 别 名 数 据 库DBDEMOS 中 先 创 建 两 个dBase 格 式 的 表Test1.dbf 和Test2.dbf。 二 者 的 结 构 如 下 表:
Test1.dbf Test2.dbf
Name C 10 Name C 10
Code C 3 Code C 3
其 中 表Test2.dbf 在 字 段code 上 建 立 有 唯 一 索 引。 同 时 假 设 表 单 中 已 有 两 个TABLE 控 件Tsource 和Tdest 和 一 个TbatchMove 组 件batchmove1。Tsource 和Tdest 的DatabaseName 属 性 均 设 为DBDEMOS。batchmove1 的source 属 性 设 为Tsource,destination 属 性 设 为Tdest。
在 使 用TbatchMove 组 件 时, 必 须 牢 记: 所 有 的 操 作 都 是 以 源 表 为 标 准 针 对 目 的 表 进 行 的, 下 面 就 分 别 举 例 说 明TbatchMove 的 各 种 操 作 模 式:
(1)batAppend 追 加 模 式 将 源 表 中 的 数 据 追 加 到 目 的 表 中, 目 的 表 必 须 事 先 存 在。 这 是 缺 省 模 式。
batchmove1.source=Tsource;
batchmove1.destination=Tdest2 ;
batchmove1.Mode:=batAppend;
batchmove1.Execute;
(2)batUpdate 更 新 模 式 用 源 表 中 匹 配 目 的 表 的 记 录 替 换 目 的 表 中 的 相 应 记 录。 目 的 表 必 须 事 先 存 在 且 有 一 已 定 义 的 索 引 用 来 匹 配 源 表 中 的 记 录。
Tdest.IndexFieldNames:='code';
batchmove1.source=Tsource;
batchmove1.destination=Tdest ;
batchmove1.Mode:=batUpdate;
batchmove1.Execute;
(3)batAppendUpdate 追 加 更 新 模 式 如 果 源 表 中 有 与 目 的 表 匹 配 的 记 录, 则 替 换 目 的 表 记 录, 否 则, 直 接 追 加 到 目 的 表 中。 目 的 表 必 须 事 先 存 在 且 有 一 已 定 义 的 索 引 用 来 匹 配 源 表 中 的 记 录。
Tdest.IndexFieldNames:='code';
batchmove1.source=Tsource;
batchmove1.destination=Tdest ;
batchmove1.Mode:=batAppendUpdate;
batchmove1.Execute;
(4)batCopy 拷 贝 模 式 按 源 表 结 构 生 成 新 表, 源 表 中 的 数 据 同 时 拷 贝 到 目 的 新 表 中。 如 果 要 生 成 的 新 表 已 存 在, 则 覆 盖。
// 按Test1.dbf 生 成 新 表xxx.dbf
// 如 果 不 指 定 扩 展 名dbf, 生 成 的 新 表 将 是Paradox 格 式 的xxx.db。
Tdest.TableName:='xxx.dbf';
batchmove1.source=Tsource;
batchmove1.destination=Tdest ;
batchmove1.Mode:=batCopy;
batchmove1.Execute;
(5)batDelete 删 除 模 式 删 除 目 的 表 中 与 源 表 匹 配 的 记 录。 目 的 表 必 须 事 先 存 在 且 有 一 已 定 义 的 索 引 用 来 匹 配 源 表 中 的 记 录。
Tdest.IndexFieldNames:='code';
batchmove1.source=Tsource;
batchmove1.destination=Tdest ;
batchmove1.Mode:=batDelete;
batchmove1.Execute;
TBatchMove 还 有 一 个 重 要 属 性ChangedTableName, 在 实 际 运 用 中, 通 过 指 定ChangedTableName 属 性 可 以 创 建 一 个Paradox 表, 该 表 用 来 保 存 目 的 表 中 被 更 改 数 据 的 原 始 备 份, 有 了 这 个 备 份 表 就 可 以 确 保 恢 复 目 的 表 中 的 数 据。
顺 便 提 一 句, 如 果 要 删 除 某 一 个 表 中 的 全 部 记 录, 可 以 采 用Table 组 件 的EmptyTable 方 法, 例 如Tdest.EmptyTable 将 清 空Tdest 所 指 定 的 表test2.dbf。
本 文 中 是 以 同 构 的dbf 表 进 行 的 示 例, 在 实 际 运 用 中, 源 表 和 目 的 表 可 能 同 购, 也 可 能 异 构, 异 构 时,Delphi 的BDE 会 自 动 进 行 类 型 和 长 度 上 的 转 换, 具 体 类 型 间 的 关 系 可 以 有 关BDE 的 帮 助。 本 文 中 各 种 操 作 模 式 的 实 际 结 果 均 可 以 从Delphi 的Database Desktop 中 查 看 到
Delphi 将Foxpro表转换为Paradox表.rar
Delphi 将Foxpro表转换为Paradox表,可能不太常用,不过也算是一个简单的数据库格式转换程序吧,或许对编写数据库开发程序有些许帮助。注:本程序运行后会直接读取DBF文件,若DBF报表文件不存在,程序会弹出错误信息,若存在此文件,将直接转换为Paradox报表,转换代码如下: self.Table1.DatabaseName:='f:\';//定义待转换的路径 self.Table1.TableName:='temp.DBF';待转换的报表数据库; self.Table2.DatabaseName:='f:\';转换后的路径; self.Table2.TableName:='new.db';转换后的报表新名称; self.Table2.TableType:=ttParadox; self.
Batch
Move1.Source:=self.Table1; self.
Batch
Move1.Destination:=self.Table2; self.
Batch
Move1.Mode:=batCopy; self.
Batch
Move1.Execute;
EasyAccess.rar
一个方便查看ACCESS数据库的小工具,无需安装office,无需安装access即可查看数据库数据。
Delphi T
Batch
Move Operation Display in Progress Bar
在触发
Batch
Move 时 显示进程
sdac4.0
sdac4.0与以前版本有很大改进,提供
batch
move能功能,还有sql monitor等等
Delphi中实现数据库备份的方法与应用 (2001年)
在数据库应用系统中,常常要对数据库进行备份。数据库备份包括数据库结构备份和数据库数据备份2部分。对于数据的备份主要是成批的复制、追加、删除和更改等操作,这种批量操作在专门的数据库开发工具中是利用APPEND和COPY等命令带上相应的命令子句完成。但在其他开发工具中并没有类似的命令,而是提供能完成类似功能的控件或对象,如在PowerBuilder中就是利用数据管道来完成2个或同构或不同构的表之间的数据批处理。介绍了如何利用Delphi的T
Batch
Move控件实现数据备份的方法以及由此产生的缓冲数据库的功能
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章