【问题标题】:schema.ini file to export from Access要从 Access 导出的 schema.ini 文件
【发布时间】:2013-01-30 18:47:39
【问题描述】:

我正在通过 VBscript 从 Access DB 导出并想尝试使用 Schema.ini 文件。我有一个批处理程序可以触发一个 vbscript 文件,该文件打开 Access DB 并进行导出。我的 vbscript 文件名是 export.vbs。

如果我有:

DoCmd.TransferText acExportDelim, "", "table", "C:\output\table.csv"

我注意到在导出过程中会自动创建一个文件“export.ini”。

如果我有

DoCmd.TransferText acExportDelim, "Schema.ini", "table", "C:\output\table.csv"

我收到一个关于“文本文件规范'Schema.ini”不存在的错误。”即使在同一个目录中这一切都发生在我那里有一个 Schema.ini 文件。我错过了什么?

谢谢!

【问题讨论】:

    标签: ms-access export ini


    【解决方案1】:

    你需要用不同的方式来解决它(Create comma separated file (csv) from access - scheduled daily from windows

    Set cn = CreateObject("ADODB.Connection")
    
    cn.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=z:\Docs\test.accdb"
    
    sSQL = "select * into " 
    sSQL= sSQL & "[text;database=z:\docs\;FMT=Delimited;HDR=Yes].[csvfile.csv]"
    sSQL= sSQL & " from table1"
    
    cn.Execute sSQL
    

    【讨论】:

    • 我想指出,这种方法比DoCmd.TransferText快得多。我有一个将所有表导出到 .csv 文件的循环。使用 DoCmd.TransferText 需要 55 秒,使用 SELECT * INTO 方法需要 16 秒。我还想指出,此方法将在输出文件夹中留下一个schema.ini,并附加有关导出的所有表的数据。如果最后处理的表为空(在 Access 2016 中测试),DoCmd.TransferText 将在文件夹中留下一个 export.ini 文件。
    • 这是我开始使用的表导出循环代码:stackoverflow.com/a/44557992/1898524
    猜你喜欢
    • 1970-01-01
    • 2016-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多