Foxtable(狐表)用户栏目专家坐堂 → [求助]高速合并报错_列“编号”被约束为是唯一的。值“”已存在


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

主题:[求助]高速合并报错_列“编号”被约束为是唯一的。值“”已存在

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


加好友 发短信
等级:婴狐 帖子:20 积分:284 威望:0 精华:0 注册:2014/2/28 21:06:00
[求助]高速合并报错_列“编号”被约束为是唯一的。值“”已存在  发帖心情 Post By:2014/3/28 21:35:00 [只看该作者]

我有一个表,其中“编号”为主键,存在test.mdb中,想定期根据编号通过高速合并中的更新同主键记录做自动更新。但会报错:“列“编号”被约束为是唯一的。值“”已存在。”
这是为什么啊?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.rar


[此贴子已经被作者于2014-3-28 21:48:46编辑过]

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


加好友 发短信
等级:幼狐 帖子:146 积分:989 威望:0 精华:0 注册:2013/10/30 20:29:00
  发帖心情 Post By:2014/3/28 22:19:00 [只看该作者]

我想,应该是你的表上有数据,在合并前全清空就可以了

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


加好友 发短信
等级:婴狐 帖子:20 积分:284 威望:0 精华:0 注册:2014/2/28 21:06:00
  发帖心情 Post By:2014/3/28 23:16:00 [只看该作者]

清空了也不成,还是相同的错误。


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/3/29 9:10:00 [只看该作者]

因为你的“T00000100056”不是“T00000100056”,而是"T00000100056 ",后面有空格,影响了系统的判断。

[此贴子已经被作者于2014-3-29 9:10:31编辑过]

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


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

 这个因为编号作为主键引发的问题,导入的时候,必须赋值和唯一。只能变通一下导入,用下面的代码

 

Dim Book As New XLS.Book(ProjectPath & "2.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("test").StopRedraw()
'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As String = {"编号","标题"}

Tables("test").AddNew()

'注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
For n As Integer = 1 To Sheet.Rows.Count -1
    Dim bh As String = sheet(n,0).Text
    If DataTables("test").Find("编号 = '" & bh & "'") Is Nothing Then '如果不存在同编号的订单
        Dim r As Row = Tables("test").AddNew()
        For m As Integer = 0 To nms.Length - 1
            Tables("test").rows(r.index-1)(nms(m)) = Sheet(n,m).Value
        Next
    End If
Next
Tables("Test").Current.Delete
Tables("test").ResumeRedraw()


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


加好友 发短信
等级:婴狐 帖子:20 积分:284 威望:0 精华:0 注册:2014/2/28 21:06:00
  发帖心情 Post By:2014/3/31 19:52:00 [只看该作者]

按您的方法试了,把数据库清空,然后把空格都删除还是不成,同样的报错

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


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

以下是引用雪糕在2014-3-31 19:52:00的发言:
按您的方法试了,把数据库清空,然后把空格都删除还是不成,同样的报错

 

我用例子测试没有报错。你清空数据以后,记得保存。


 回到顶部