【发布时间】:2015-09-28 13:29:07
【问题描述】:
我正在尝试将数据从文本文件导入 Access 2007 和 2010,由竖线分隔。我使用 MS Access 的导入文本向导,但是当我在选择适当的分隔符后尝试导入它时(预览看起来不错),我收到以下错误:
您请求对表的更改不成功,因为它们会在索引、主键或关系中创建重复值。更改包含重复数据的一个或多个字段中的数据,删除索引,或重新定义索引以允许重复条目,然后重试。
没有主键,也没有关系,因为它只是一个文本文件。我能够在 Windows XP 中插入这个文本文件,但在 Windows 7 中出现了问题。我能够成功地将数据导出到 Excel 中。我还在导入文本向导的字段选项中将索引设置为否,但这也没有帮助。
任何帮助将不胜感激,因为我在任何地方都找不到任何有用的信息。
编辑:我尝试插入新的和现有的表,甚至是一个新的数据库(accdb 和 mdb 格式),每次我遇到同样的错误。
Edit2:我在写字板中打开了文本文件,并再次将其保存为 txt 文件,Access 没有产生任何错误。以前的 txt 文件没有显示新行,但 Access 仍然知道每条记录的结束位置,并且预览看起来很好。新文本文件专门显示新行(每条记录单独)。如果有人对如何在不创建新 txt 文件的情况下解决此问题有任何建议,请告诉我
【问题讨论】:
-
您是导入新表还是现有表?错误与文本文件无关,而与您插入数据的表有关。
-
我都试过了。即使插入一个完全空的数据库和新表也会产生相同的错误。
-
嗯。诡异的。在导入向导中有一个页面,您可以在其中选择 Access 是否应添加主键、使用导入的列或不使用。你用的是哪个?您是否尝试过让 Access 添加自动编号列?
-
是的,我尝试了所有 3 个选项,似乎没有解决问题
-
你能创建一个最小的数据集来重现问题,然后发布吗?使用这个:sensefulsolutions.com/2010/10/format-text-as-table.html --- 编辑:不需要格式化程序,因为你有 |作为分隔符。
标签: ms-access