我想将访问查询导出到 csv 文件中。为此,我使用了前面讨论堆栈溢出时给出的以下格式。
Function ExportQuery()
DoCmd.TransferText acExportDelim, , "[your query]", "[output file].csv"
End Function
我将输出作为 CSV 文件获得,但数据在工作表的列中是分开的。我希望在所有列的第一列本身中用分号分隔数据。
请尽快恢复。
我得到了我的问题的答案。
如果您想放置任何分隔符,如逗号、分号等。
双击要导出的查询或表。然后单击“文件”选项卡中的“导出”。给出文件名并选择文本文件 (Access 2003)。然后点击全部导出。导出文本向导将打开。选择单选按钮分隔并单击高级。然后选择您想要的字段分隔符。并选择文本限定符作为无。然后选择“另存为”并为规范命名。并像在手动过程中一样完成整个过程。保存后关闭两个文件 CSV 并访问。
保存规范名称后,VBA 代码如下所示:
Function ExportQuery()
DoCmd.TransferText acExportDelim,"Specification Name" , "[your query]", "[output file].csv"
End Function
所以只在代码中添加“规范名称”。
使用此处的 Java 代码可以轻松地将 Access 数据库导出到 csv 文件:
https://github.com/NACHC-CAD/access-to-csv-tool
此代码在测试代码中包含完整的示例,并对nortwinds 数据库进行了完整的导出。
有关将单个表转换为 .csv 文件的代码,请参见类 AccessToCsvUtil。
请参阅类 WriteToCsvIntegration 测试以查看导出数据库中所有表的代码。
该实用程序基于 ucanaccess jdbc 工具和 Apache commons-csv 工具。
<dependency>
<groupId>net.sf.ucanaccess</groupId>
<artifactId>ucanaccess</artifactId>
<version>4.0.4</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-csv</artifactId>
<version>1.8</version>
</dependency>