Foxtable(狐表)用户栏目专家坐堂 → 在数据替换中如何计算替换成功记录数?


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

主题:在数据替换中如何计算替换成功记录数?

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
在数据替换中如何计算替换成功记录数?  发帖心情 Post By:2019/10/14 13:46:00 [只看该作者]

要替换多列数据,列名称储存在集合lms中,。代码入下:
   DataTables("学生信息导入样表").StopRedraw
Dim i ,y As Integer = 0
        Dim dr As DataRow
        For Each dr1 As DataRow In DataTables("学生信息导入样表").DataRows
            For y=0 To lms.count-1
                DataTables("xszxztb").SQLReplaceFor(lms(y),dr1(nms(y)),"sfzhm= '" & dr1("身份证号码") & "'")
            Next
            i=i+1
            
        Next
        DataTables("学生信息导入样表").Save()
        DataTables("学生信息导入样表").ResumeRedraw
        MessageBox.show("共替换成功" & i & "条记录")
这里的 i 显然不是替换了的行数
如何才能知道替换了几条?另外想在替换过的行做个标记,即成功的“学生信息导入样表” 中的“是否替换成功”列中做记true
,dr1("是否替换成功")=true 又插下那呢? 谢谢!

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/14 14:00:00 [只看该作者]

For Each dr1 As DataRow In DataTables("学生信息导入样表").DataRows
            For y=0 To lms.count-1
                i=i + DataTables("xszxztb").SQLReplaceFor(lms(y),dr1(nms(y)),"sfzhm= '" & dr1("身份证号码") & "'")
            Next
        Next

SQLReplaceFor会返回一个整数,表示合计有多少行的值被替换了。

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2019/10/14 14:38:00 [只看该作者]

谢谢,但那个标记如何解决呢?应把那个标记放在才好? dr1("是否已替换成功")=true 这个放哪?
[此贴子已经被作者于2019/10/14 14:40:49编辑过]

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/14 14:41:00 [只看该作者]

For Each dr1 As DataRow In DataTables("学生信息导入样表").DataRows
            For y=0 To lms.count-1
                i=i + DataTables("xszxztb").SQLReplaceFor(lms(y),dr1(nms(y)),"sfzhm= '" & dr1("身份证号码") & "'")
            Next
dr1("是否替换成功")=true 
        Next

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2019/10/14 21:36:00 [只看该作者]

谢谢!

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2019/10/15 15:48:00 [只看该作者]

老师,那个标志还是没有解决。因为它不管是否替换成功,它都dr1(“是否替换成功”)=ture  怎么改呢,谢谢!

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/15 16:17:00 [只看该作者]

怎么样才算是替换成功?

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


加好友 发短信
等级:四尾狐 帖子:855 积分:6402 威望:0 精华:0 注册:2017/11/21 21:31:00
  发帖心情 Post By:2019/10/15 16:45:00 [只看该作者]

我的要求是,比对两个表的身份证号码,如果相同,就用样表中所选择中的列的内容替换系统中表的内容,代码已经替换成功,就是在样表做比对成功的记号不准确,把所有的都记成“成功了”,即每一行都 dr1("是否替换成功")=true。我特意设定了一列身份证号码不同的,它没有替换(说明达到要求),但它在样表“是否替换成功”也标记成“true”了,这一点不符合我的要求,谢谢!
[此贴子已经被作者于2019/10/15 16:46:54编辑过]

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/15 16:48:00 [只看该作者]

比对两个表的身份证号码的代码在哪里?

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/15 16:52:00 [只看该作者]

在这个意思?
DataTables("学生信息导入样表").StopRedraw
Dim i ,y,k As Integer = 0
Dim dr As DataRow
For Each dr1 As DataRow In DataTables("学生信息导入样表").DataRows
    k=0
    For y=0 To lms.count-1
        k = DataTables("xszxztb").SQLReplaceFor(lms(y),dr1(nms(y)),"sfzhm= '" & dr1("身份证号码") & "'")
    Next
    dr1("是否替换成功") = k > 0
    i=i+k
    
Next

 回到顶部
总数 11 1 2 下一页