Foxtable(狐表)用户栏目专家坐堂 → [求助]多条记录复制问题


  共有2092人关注过本帖树形打印复制链接

主题:[求助]多条记录复制问题

帅哥哟,离线,有人找我吗?
lzzhx
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
[求助]多条记录复制问题  发帖心情 Post By:2018/3/12 14:53:00 [只看该作者]

请教老师:
      如果表A有50个字段(其中一个字段是标记年代的,如值是2017),5000条记录,现在想把这5000条记录全部复制为新记录(总记录数就是10000条了),且将新记录的标记年代的字段值改为2018,如何才能实现?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/12 15:12:00 [只看该作者]

Dim dt As DataTable = DataTables("表A")
For Each dr As DataRow In dt.Select("标记年代 = '2017'")
    Dim ndr As DataRow = dt.AddNew
    For Each dc As DataCol In dt.DataCols
        ndr(dc.name) = dr(dc.name)
    Next
    ndr("标记年代") = 2018
Next


 回到顶部
帅哥哟,离线,有人找我吗?
lzzhx
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2018/3/12 15:18:00 [只看该作者]

谢谢有点甜老师,这段代码执行下来是否时间很长?有没有在后台用SQL Server语句执行的代码?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/12 15:34:00 [只看该作者]

以下是引用lzzhx在2018/3/12 15:18:00的发言:
谢谢有点甜老师,这段代码执行下来是否时间很长?有没有在后台用SQL Server语句执行的代码?

 

代码你测试过才知道

 

systemready = false
Dim dt As DataTable = DataTables("表A")
dt.ResumeRedraw
dt.StopRedraw
For Each dr As DataRow In dt.Select("标记年代 = '2017'")
    Dim ndr As DataRow = dt.AddNew
    For Each dc As DataCol In dt.DataCols
        ndr(dc.name) = dr(dc.name)
    Next
    ndr("标记年代") = 2018
Next
dt.ResumeRedraw
systemready = True

 

如果要用sql语句处理,这样写,如

 

insert into {表A} (第一列, 第二列, 第三列) select 第一列, 第二列, '2018' from {表A} where 第三列 = '2017'


 回到顶部