我想将Access数据库中的表导出到.txt文件。
这是我的代码:
library(RDCOMClient)
#Path of txt File
destPath = 'C:\\Path\\to\\Hello.txt'
#Path of AccessDB
strDbName = "C:\\MyPath\\AccessDB.accdb"
#launche Access App
oApp = COMCreate("Access.Application")
#open the AccessDB
oApp$OpenCurrentDatabase(strDbName)
#Export the table to txt using transferText Method
acExportDelim <- 0
exportObj = oApp[["DoCmd"]]
exportObj$TransferText(acExportDelim,"NameOfTable", destPath, TRUE)
oApp$Quit()
exportObj <- NULL
oApp <- NULL
我无法找出它无效的原因......
这是我一直得到的错误消息:
<checkErrorInfo> 80020009
Error: exception occurred.
任何帮助表示赞赏! (&#34; RODBC方法&#34;使用32位R对我需要的实体不起作用)
提前致谢...
答案 0 :(得分:1)
DoCmd.TransferText
的参数不正确。您放置表名的第二个参数应该是导出规范的名称。因为你错了,所有其他论点也是错误的。
首先,在Access(guide)中创建一个命名的导出规范。然后,在命令中使用它来导出表。
此外,由于您正在使用后期绑定,因此无法使用acExportDelim
枚举,因此您必须使用该值的数字(2)
最终导出命令:
oApp[["DoCmd"]]$TransferText(2,"ExportSpecificationName", "TableName", destPath, TRUE)
请注意,如果可能,您最好尝试修复ODBC连接。