中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Delphi > 临时文章
将ADODataSet导出的数据导回原来的table
作者:myzerg 时间:2002-09-25 11:40 出处:互联网 责编:chinaitpower
              摘要:将ADODataSet导出的数据导回原来的table
我们都知道,ADODataSet可以将数据保存为 xml或者 pdfg格式的本地数据文件,
但是,如果将数据保存后推出,不做任何修改,下次将数据用AdoDataSet.loadFromFile加载后
系统是不会将数据给我们送回原来的备份的table的,简于此,我写了一个函数,可以将单表导出的数据
再次到会到原来的table 中,但条件是,你的 PK不能是 自增的,如果有这种情况,你可以在我的代码中
稍稍改动下,就可以了,不难,呵呵
procedure importData(Conn:TADOConnection;TableName:string;AdoDataSet:TADODataSet);
var
 i : integer;
 RDataSet: TADODataSet;
begin
 RDataSet := TADODataSet.Create(nil);
 RDataSet.Connection := Conn;
 RDataSet.LockType := ltBatchOptimistic;  RDataSet.CommandText := format('SELECT TOP 1 * FROM %s',[TableName]);
  RDataSet.Open;  AdoDataSet.First ;
  try
     while not AdoDataSet.Eof do
     begin
       RDataSet.Append;
       for i:=0 to AdoDataSet.FieldCount -1 do
       begin
         RDataSet.Fields[i].Value := AdoDataSet.Fields[i].Value;
       end;
       RDataSet.Post;
       AdoDataSet.Next;
     end;
       RDataSet.UpdateBatch();
  finally
    RDataSet.Free;
  end;
end;



关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有