Access DB查询结果提取

Posted

技术标签:

【中文标题】Access DB查询结果提取【英文标题】:Access DB query result extract 【发布时间】:2017-03-02 15:00:28 【问题描述】:

我编写了一个 Access 查询,它包含 10 个不同的表。 查看表格后,我得到了 300000 多条记录。 我现在如何将此结果提取或保存到任何其他形式,如 EXCEL 或 CSV 或 DB 甚至 ACCESS? 我使用 Excel 和 CSV 作为导出,它说允许不超过 65000 行 ODBC 连接说 - 数据太长。 任何帮助将不胜感激。

【问题讨论】:

如果您已经可以访问数据 - 为什么要再次存储它 - 只需查询它? 为什么需要再次保存超过 300,000 行的信息? @Minty - 我有它以及许多其他表,我关心的只是输出表。我也必须分享文件 但是 300,000 行是需要复制的大量信息。为什么不保存查询并在需要查看结果时运行它?如果您经常检索这么多行数据,也许是时候停止使用 Access。 您需要提供更多信息。 “它给出了一个错误”没有帮助。提供错误消息会很有帮助。 【参考方案1】:

您可以根据 access 中的查询进行“制作表”。

看到这个:https://support.office.com/en-us/article/Create-a-make-table-query-787763ba-a9e4-42c0-b09f-98c01014808e

【讨论】:

我收到错误“字段大小太长” 一个或多个输出字段可能超过 256 个字符。您需要确定哪些字段并将这些字段的字段类型更改为备注。 如果您的字段超过 255,Excel 将截断。您可以通过重复行或添加字段以适应 SPLIT 或仅导出到 CSV 来解决此问题。即使这样,您也需要每 65k 条记录创建一个新输出。迭代! 我的描述 - 列有超过 255 个字符有什么办法呢? 好的,如果“制作表”查询给了太多“悲伤”,这里有另一种方法来完成任务: 1. 创建一个包含所有必要字段 [和数据类型] 的表存储查询输出数据。 2.创建一个“插入查询”,而不是一个生成表来将信息转储到新表中。知道如果运行两次(或更多)插入查询将追加数据,因此请确保在查询运行之间截断表。【参考方案2】:

你可以调用这个命令:

DoCmd.TransferText acExportDelim, , "YourQuery", "C:\Test\export.csv", True

【讨论】:

我的数据库是 ACCESS 数据库 Ctrl+G 您需要提供更多信息。 “它给出了一个错误”没有帮助。

以上是关于Access DB查询结果提取的主要内容,如果未能解决你的问题,请参考以下文章

PHP / MS Access DB 无法查询任何内容

Microsoft Access 查询结果为空

Access 2010 IIF 查询中的语法

Access DB:操作必须使用可更新的查询

如何从 Oracle DB 查询外部 MS Access DB?

从 MS access 中提取查询 97