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

在Delphi中利用Tbatch组件完成数据批处理

HTML文档下载 WORD文档下载 PDF文档下载
在Delphi中利用Tbatch组件完成数据批处理

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

本 文 要 介 绍 的 是Delphi 中 用 来 完 成 数 据 批 处 理 任 务 的 组件TBatchMove。TBatchMove 组件 能 够:

将 一 个 数 据 集 中 的 数 据 追 加 到 一个 表 中。.

从 一 个 表 中 删 除 满 足 条 件 的 记 录。

按 旧 表 结 构 生 成 一 个 新 表, 若 欲 生成 的 新 表 已 存 在, 则 覆 盖。

---- 具 体 的 操 作 要 通 过 设 置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 的 各 种 操 作模 式:

batAppend 追 加 模 式 将 源 表 中 的 数据 追 加 到 目 的 表 中, 目 的 表 必 须 事 先 存在。 这 是 缺 省 模 式。

batchmove1.source=Tsource;

batchmove1.destination=Tdest2 ;

batchmove1.Mode:=batCopy;

batchmove1.Execute;

batUpdate 更 新 模 式 用 源 表 中 匹 配目 的 表 的 记 录 替 换 目 的 表 中 的 相 应 记录。 目 的 表 必 须 事 先 存 在 且 有 一 已 定 义 的 索 引 用 来 匹配 源 表 中 的 记录。

Tdest.IndexFieldNames:='code';

batchmove1.source=Tsource;

batchmove1.destination=Tdest ;

batchmove1.Mode:=batUpdate;

batchmove1.Execute;

batAppendUpdate 追 加 更 新 模 式 如 果 源表 中 有 与 目 的 表 匹 配 的 记 录, 则 替 换目 的 表 记 录, 否 则, 直 接 追 加 到 目 的 表 中。 目 的 表 必须 事 先 存 在 且 有 一已 定 义 的 索 引 用 来 匹 配 源 表 中 的 记 录。

Tdest.IndexFieldNames:='code';

batchmove1.source=Tsource;

batchmove1.destination=Tdest ;

batchmove1.Mode:=batAppendUpdate;

batchmove1.Execute;

batCopy 拷 贝 模 式 按 源 表 结 构 生 成新 表, 源 表 中 的 数 据 同 时 拷 贝 到 目 的新 表 中。 如 果 要 生 成 的 新 表 已 存 在, 则 覆 盖。

// 按Test1.dbf 生 成 新 表xxx.dbf

// 如 果 不 指 定 扩 展 名dbf, 生 成 的 新 表 将 是Paradox 格 式 的xxx.db。

Tdest.TableName:='xxx.dbf';

batchmove1.source=Tsource;

batchmove1.destination=Tdest ;

batchmove1.Mode:=batCopy;

batchmove1.Execute;

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 中 查 看 到。

offset()-JQuery API outerHeight()-JQuery API outerWidth()-JQuery API scrollLeft()-JQuery API scrollTop()-JQuery API width()-JQuery API ajaxForm(object)-JQuery API ajaxSubmit(object)-JQuery API clearForm()-JQuery API clearInputs()-JQuery API fieldSerialize(true)-JQuery API fieldValue(successful)-JQuery API formSerialize(true)-JQuery API formToArray(true)-JQuery API resetForm()-JQuery API $.recallDroppables()-JQuery API $.SortSerialize()-JQuery API Draggable(hash)-JQuery API DraggableDestroy()-JQuery API Droppable(options)-JQuery API DroppableDestroy()-JQuery API Sortable(options)-JQuery API SortableAddItem(elem)-JQuery API $.meta.setType(type, name)-JQuery API data()-JQuery API disableTab(position)-JQuery API enableTab(position)-JQuery API tabs(initial, settings)-JQuery API triggerTab(position)-JQuery API triggerTab(position)-JQuery API Tooltip(settings)-JQuery API 怎么通过程序改变REMOTEDATACTL的属性? 请问如何在JSP中实现邮件的收发?(涉及到密码验证的问题)我已经郁闷很久了! 如何得到另一个进程中的线程正在使用的tcp/ip端口? **好像有一个网址可以自由上传30M以下的软件,请问有谁知道这个网址?????** Unicode的问题???? db 库文件被破坏,请教高手? 本人刚接触vc,紧急求助! 请问,如何将简体字的网页,转换为繁体字的网页? 请教vb3秒精确定时问题? 哪位大侠能在今天内急救!!关于asp.net的数据验证和数组传送问题 lihonggen0(李洪根,用VB,标准答案来了) 密码被人盗用 在Delphi中用ADO怎样连接Excel表 x++等的问题。 当一个数据库数据更新后如何通知所有连接到此数据库的用户来更新自己? 一个有趣的问题 奉献100, 现在手头有个程序,关于附件上传! 如何判断A字符串中是否包含B字串? 做个类似的邮件发送程序 快快就我 怎样同时新增主从两张表的数据? vb.Net中的几种类型集合中,那种适合于用Index和Key来索引?我怎么觉得.Net的CollectionBase还没有vb6的Collection好使? 为亚洲雪耻,为中国队加油!! 紧急求助:在那儿可以找到关于字体文件的文件格式!!! 测试adoconnection是否已关闭 请教各位大侠! 关于表设了密码的问题 开始了吗?开始了吗?北京的高程考试报名开始了吗? 如何自定义数据类型? 图片显示不了了 java 线程,对当前线程(非主线程)调用sleep,为什么主线程(窗口)也没反应了 各位大虾帮忙呀,哪位把下面的文字翻译成准确的英文,200分相赠!!!决不食言!!! 请教:PHP下的事件处理方法 如何通过ASCII码区分全角与半角字符?急! 触发器???:(拜托各位大哥大姐,大叔大伯! 字符串替换函数是什么? 送分 那位大虾帮我翻译一下 急 分不够可以加 为了忘却的纪念! 急急急急急!!!!!!!!!!,Band里的内容过长,如何让它自动的分页??? oicq的窗口title怎么为空了?如何得到句柄? session问题! 用dbgrideh控件,如何实现汇总结果的打印 有关ATL的最基础问题 怎样监控icmp包?用自编的程序 急急急急急!!!!!!!!!!,Band里的内容过长,如何让它自动的分页??? 使对话框最小化渐变到托盘区。 各位高手!!我用的是win2000工作组模式,为什么我能访问别人,而别人不能访问我呢??? 有关文件的读写问题。 大家讨论一下内存分配、释放的问题 关于在jsp中运用sqlserver的小问题!!! 怎么样可以将session的存活期限设置成“永远不死”?? 送分题,如何取得一个表的所有字段名? 热力学热效应计算问题298K将1mol苯(液)在弹式量热计中完全燃烧生成水和二氧化碳气体,同时释放出热量3264KJ,则其恒压热效应QP (KJ.mol-1)约为( B ):A、3268 B、-3260 C、3260 D、-32681mol液体 发动机正常工作时水箱温度是多少? 科比的英文名字是叫KB 还是 SB? 热力学问题—体积功的计算带活塞的密闭容器,外压大于内压,算体积功时,为什么用 W=p外*v,难道和内压没关系?气体膨胀时也是这样吗?总是用外压计算?如果我有表述不清的,请指出, 汽化器设计中 设计压力/温度和运行压力/温度 有什么区别 水流量每小时2400吨,压力4.5公斤,要多大的管道, 1摩尔是阿伏加德罗个微粒的粒子集合体吗、 反应釜操作工艺滴加过程中温度高了是哪些原因引起的,分别应采取什么样的相应措施 在已知供水压力 流量 距离及用户用水量的情况下 如何确定某楼房供水主水管道的口径大小? 1mol粒子的数目为6.02X10 23个,是不是所有的物质1mol都是这么多粒子? 摩尔是物质微粒集合体的质量单位 这句话为什么错了 反应釜的设计温度为180℃,工作温度为30—40℃可以运行吗 1mol指6.02x10的23次幂 那两种粒子的粒子数加和是6.02x10的23次幂呢 干电池的材料是什么我想知道的是 我们普通使用的5号干电池(一次性电池) 都有什么材料 总的来说就是做一个5号电池都要什么? 功率的计算, 将2molSO2和2molSO3气体混合于固定体积的密闭容器中,在一定条件下发生反应:2SO2(g)+O2(g)=2SO3(g),平衡时SO3为nmol.相同温度下,分别按下列配比在相同体积的密闭容器中放入起始物质,平衡时SO3的物质 如题,干电池发热 原因如果在电路中,安装新电池后,电池快速发热,是什么原因 功率怎么算? 我与水的作文500字最晚后天上午!写事的~ 容器质量为500g,高30cm,底面积0.01平方米,容积0.0015立方米,当此容器盛满水时,(1)水对容器底部的压力?(2)容器对水平桌面的压强? 某同学先后对同一鼓面轻敲和重击各一次,两次发出声音的音调还是响度不同? 我的分某同学先后对同一鼓面轻敲和重击各一次,两次发出声音的音调还是响度不同? 我的分析是:音调不 写水的作文 500字 干电池外壳主要材料是什么 太阳辐射与光照的区别? 将2molSO2气体个2molSO3气体混合于固定的容器中,在一定条件下发生反应2SO2(g)+O2(g)=2SO3(g) 可逆反应达到平衡时SO3为n mol.在相同温度下,分别按下列分别按下列配比在相同的密闭容器中放入起始物 体积为0.001立方米投入装有水的容器中静止后露出水面0.04米,容器底面积0.04平方米,g取10牛/千克1.木块受到的浮力2.木块受到的重力3.投入木块后,容器底增加的压强4.若将此木块投入到某种液体 我家是开洗浴的,我想按一台普通水泵从1楼抽上6米高处的水箱,水位和水泵该怎样控制. 水的进化作文500字关于水的进化 干电池是普通锌锰干电池的简称,一般手电筒中使用锌锰干电池.其中正极材料是——,负极材料是——. 科比英文名 汉语拼音音序和音节是什么? 当底面积为0.05平方米、容积为0.025立方米的长圆筒装满水时,容器对水平桌面的压强为7065帕.问:(1)水对该容器底部的压强有多大?(2)该容器对水平桌面的压力有多大?(3)容器自重为多 谁帮我把这句话翻译成英文“奇迹的名字叫 科比—布莱恩特” 1.1 mol任何粒子集合体都含有6.02×10的23次方个粒子 (教材原话)2.我们把含有6.02×10的23次方个粒子的任何粒子集体都 称为 1mol (教材完全解读上的注意事项)3.我们把含有6.02×10的23次方个粒 干电池正极材料是什么? 底面积500平方厘米,容积0.01立方米的薄壁容器自重15N,装满某种液体后对水平桌面的压强是1800Pa,求容器中液体的密度.(g取10N/kg) 下图表示在密闭容器中反应:2SO2(g)+O2(g)2SO3(g),△H 重为2N,店面积为1×10^-2 平方米的薄壁圆柱形容器内装有5×10^-3 立方米的水,放在水平桌面的中央,g=10N/kg,求:(1)水面下0.2m处水产生的压强p水(2)容器内水的质量m水(3)容器对桌面的压强p 关于玉米PLA,和ABS塑料哪种更好? 一定条件下,在2SO2(g) + O2(g) 2SO3(g) 的化学平衡体系中,各物质的浓度分别为 :c(SO2)= 2.0 mol/L,c(O2) = 0.8 mol/L,c(SO3) = 2.4 mol/L,则氧气的起始浓度可能是 (B )A.0.2.4 mol/L B.2 mol/LC.0.8 mol/L D.无法确定 做吨袋用的聚丙烯编织布多少钱一吨? 已知传播速度 波长 求光的频率?在真空中波长? 化学平衡压强问题2SO2(g) +O2(g) → 2SO3(g)25°C,2SO2(g) +O2(g) → 2SO3(g),∆G°= -141.8kJ求Kp,需要过程解释 抗裂纤维除了聚丙烯短纤维还有什么其他的吗?之前见过类似棉花絮状的不知道是什么? 就目前的3D打印机( PLA 和 ABS)主要用途是什么?举例说明下.目前的国内3D打印机能打印出金属材质的样件么(国内)? “对鼓轻敲和重击格一下,两次发出的声音不同的原因是音调不同.”为什么,不是响度吗? 电流在某段电路上所做的功与_______,________和________有关 3D打印中PLA材料是什么? 对于2SO2+O2→2SO3,下列哪种情况达到了化学平衡状态A:反应容器内,SO2 O2 SO3共存时的状态B;SO2的分解率等于SO3的生成速率的状态C:单位时间内,每消耗2mol的SO2同时生成1mol的SO3D:单位时 自来水管的阀门控制着什么? PLA与ABS打印效果有何不同? 请问几个问题,哪些是属于物理学中的声音的响度,哪些是音调!(1)这首歌的调子太高,我唱不上去(2)引吭高歌(3)男高音歌唱家(4)请勿大声喧哗 水的重要性 一篇语文作文要求500字 ABS3d打印机耗材中ABS是什么材质啊,为什么3d打印机要用这个abs当耗材材质啊 铁和硫酸铜溶液反应,覆有红色物质的铁钉与原来铁钉相比,质量 畅想水之韵500字作文啊 科比布莱恩特的英文名字是什么? 热力学中两个不同过程功和热的比较373K标准压力下的1mol水经下列两个不同过程达到373K标准压力下的水蒸气:(1)等温等压可逆蒸发(2)真空蒸发.这两个过程中功和热的关系( )A W1>W2 Q1>Q 为什么海尔洗衣机脱水时总是要等很久时间?我家的洗衣机脱水时间很长 ,有时候你不去关它 可能它不会停下来.这是怎么回事呢 科比的英文名咋读?是应该读ke bi(拼音)还是kou bi?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘