我在尝试将数据附加到现有表时遇到了困难。
我有大约100个CSV文件,我想从中创建一个表;所有表都有不同的列结构,但这不是一个问题,因为相关的字段名称在每个文件的第一行。
首先,我从其中一个文件创建一个新表,表明我的字段名称在第一行。我将具有超过256个字符的特定字段更改为备注字段并导入数据。
然后我将表中缺少的字段添加到表中。
现在,当我尝试追加更多数据时,我再次选择我的字段名称在第一行,但现在我收到了发往备忘录字段的数据的截断错误。
为什么会出现此错误?有解决方法吗?
修改 的
以下是我尝试解决问题的最新消息:
除非具有完全相同的结构,否则导入和附加表将无效。此外,您无法创建包含所有字段和属性的主表,然后将所有表附加到主表。您仍然会收到截断错误。
我接受了CodeSlave的建议并尝试上传表格,设置我需要成为备注字段的字段,然后附加表格。这有效,但同样,备注字段在每个数据文件中的顺序不一定相同,我有1200个数据文件可以导入到24个表中。按表导入数据表不是这么多表的选项。
答案 0 :(得分:4)
我希望您遇到的是源文件(CSV)和目标表(MS Access)之间的不匹配。
MS Access会在您进行导入时对CSV文件中的字段类型进行一些猜测。然而,它并不完美。也许它看到一个字符串作为备忘录或浮动作为真实。没有看到数据我就不可能知道。
我通常会做的是:
(对于您要加载的每个CSV文件重复此操作。)
如果我提前知道每个CSV文件的结构已经相同,我倾向于将它们全部连接成一个,只需要进行一次导入/清理。
答案 1 :(得分:1)
有一个非常类似的问题 - 尝试将包含大文本字段(> 255个字符)的CSV文件导入现有表格。将字段声明为备忘录但仍被截断。
解决方案:启动导入以链接表格,然后单击“高级”按钮。创建一个链接规范,将相关字段定义为备注字段,然后保存链接规范。然后取消导入。这次执行另一次导入所需的导入到现有表的导入。再次单击“高级”按钮,然后选择刚刚创建的链接规范。单击“完成”,应正确导入数据而不截断。
答案 2 :(得分:0)
我遇到了这个问题,但发现它总是发生在第一行。因此,通过在csv中插入一个空白行可以完美导入,然后您需要删除Access表中的空白行。
干杯, Grae Hunter
注意:我正在使用Office 2010