ACCESS:将 CSV 数据附加到表时出现截断错误?

too*_*hed 2 csv ms-access

我目前在尝试将数据附加到现有表时遇到困难。

我有大约 100 个 CSV 文件,我想从中创建一个表;所有表都有不同的列结构,但这并不是真正的问题,因为关联的字段名称位于每个文件的第一行。

首先,我从其中一个文件创建一个新表,表明我的字段名称位于第一行。我将超过 256 个字符的特定字段更改为备注字段并导入数据。

然后,我将缺少的字段添加到表中。

现在,当我尝试附加更多数据时,我再次选择我的字段名称位于第一行,但现在我收到了发往备注字段的数据的截断错误。

为什么会出现这个错误?有解决方法吗?

编辑

以下是有关我尝试解决该问题的更新:

  1. 除非它们具有完全相同的结构,否则导入和追加表将不起作用。此外,您无法创建设置了所有字段和属性的主表,然后将所有表附加到主表。您仍然收到截断错误。

  2. 我采纳了 CodeSlave 的建议,尝试上传表格,将需要的字段设置为备注字段,然后附加表格。这确实有效,但同样,每个数据文件中的备注字段不一定都按相同的顺序排列,而且我有 1200 个数据文件要导入到 24 个表中。对于这么多表来说,按表导入数据表并不是一个选项。

BIB*_*IBD 5

我预计您遇到的是源文件 (CSV) 和目标表 (MS Access) 之间不匹配。

当您进行导入时,MS Access 将对 CSV 文件中的字段类型进行一些猜测。然而,它并不完美。也许它将字符串视为备忘录或将浮动视为真实的。不看数据我是不可能知道的。

我通常会做的是:

  1. 将第二个 CSV 导入到它自己的(临时)表中
  2. 清理第二个表
  3. 然后使用 SQL 查询将第二个表中的记录追加到第一个表中。
  4. 删除第二个表

(对您正在加载的每个 CSV 文件重复此操作)。

如果我提前知道每个 CSV 文件在结构上已经相同,我会倾向于将它们全部连接成一个,并且只需执行一次导入/清理。