Foxtable(狐表)用户栏目专家坐堂 → 如何利用“更新同主键记录”更新记录


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

主题:如何利用“更新同主键记录”更新记录

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


加好友 发短信
等级:婴狐 帖子:22 积分:196 威望:0 精华:0 注册:2013/10/7 13:14:00
如何利用“更新同主键记录”更新记录  发帖心情 Post By:2013/10/8 15:08:00 [只看该作者]

在利用EXCEL进行数据导入时,选择“更新同主键记录”方式更新记录,但是在选定表中还是没有更新记录而是在表后面增加记录。

请问如何解决,如何设计主键。


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/10/8 15:09:00 [只看该作者]

你确定主键是相同的吗? 默认主键是 _IDentify 列哦

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


加好友 发短信
等级:婴狐 帖子:22 积分:196 威望:0 精华:0 注册:2013/10/7 13:14:00
  发帖心情 Post By:2013/10/8 15:11:00 [只看该作者]

 是我采用的是默认主键是 _IDentify 列哦

但是在EXCEL里就不知道在哪里设置。


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/10/8 15:12:00 [只看该作者]

Excel表格有 _Identify列吗? 没有的话怎么对比? 当然是全部都没重复 全部都添加啦.

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


加好友 发短信
等级:婴狐 帖子:22 积分:196 威望:0 精华:0 注册:2013/10/7 13:14:00
  发帖心情 Post By:2013/10/8 15:48:00 [只看该作者]

利用ACCESS 导入也不行

在ACCESS设置了主键

还是不行。请指导。


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/10/8 15:59:00 [只看该作者]

呵呵,不会的.上个例子看看.

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


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

 多嘴说一句,自带的高速合并真心不好用,至少可以给用户指定主键/指定要对比的列嘛,这样才合理简单易用。

 现在只能用代码自己导入了。


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


加好友 发短信
等级:婴狐 帖子:22 积分:196 威望:0 精华:0 注册:2013/10/7 13:14:00
  发帖心情 Post By:2013/10/9 0:16:00 [只看该作者]

测试的项目如下:
1)在县分公司表内进行数据导入,导入文件为“县分.mdb”
2)导入的两个表格都试过都未能成功
3)希望的结果是附件“县分1.XLS”
试了很多次都未成功。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip


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


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

 up一下,暂无时间做。参考7楼代码先自己弄弄。

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


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

 把下面的代码赋值到 命令窗口 或者 做成一个按钮执行。

Dim dlg As new OpenFileDialog
dlg.Filter = "excel文件|*.xls;*.xlsx"
If dlg.ShowDialog Then
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("县分公司").StopRedraw()
    '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
    Dim nms() As String = {"编号","县分公司","人口","面积"}
    '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim bh As String = sheet(n,0).Text
        Dim fdr As DataRow = DataTables("县分公司").Find("编号 = '" & bh & "'")
        If fdr Is Nothing Then '如果不存在同编号的订单
            fdr = DataTables("县分公司").AddNew()
        End If
        For m As Integer = 0 To nms.Length - 1
            fdr(nms(m)) = Sheet(n,m).Value
        Next
        
    Next
    Tables("县分公司").ResumeRedraw()
End If

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