使用 PowerShell 将多个 .accdb 文件转换为 .mdb?
Posted
技术标签:
【中文标题】使用 PowerShell 将多个 .accdb 文件转换为 .mdb?【英文标题】:Convert multiple .accdb files to .mdb using PowerShell? 【发布时间】:2016-03-22 15:45:58 【问题描述】:我需要将大约 50 个 .accdb 文件转换为 .mdb。我知道在 Access 本身有一种方法可以做到这一点,但我宁愿不打开 50 个 Access 数据库来手动转换每个数据库。
是否可以在 PowerShell 中执行此操作?只是重命名扩展就足够了,还是比这更复杂?
【问题讨论】:
仅仅改变文件扩展名肯定是不够的。看看您是否可以使用 PowerShell 中的 DBEngine.CompactDatabase Method。请注意,如果您的 ACCDB 包含 MDB 格式不支持的功能,则转换尝试可能会失败。 【参考方案1】:只是重命名扩展就足够了,还是比这更复杂?
肯定不止这些。
以下代码似乎对我有用。它至少转换了表格。 .accdb 中有一个表单没有被复制到 .mdb,因此它可能具有旧文件格式不支持的属性(参考:Hans 对问题的评论)。
$Access = New-Object -com Access.Application
$Access.ConvertAccessProject(
"C:\Users\Public\test\test.accdb",
"C:\Users\Public\test\test2000.mdb",
"acFileFormatAccess2000")
$Access.Quit()
【讨论】:
我得到了这个工作,但我不得不把 '$' 从 acFileFormatAccess2000 前面拿出来,我把它放在引号里。 @chrisdoubleu13 - 对,对不起。那行代码是一些早期尝试遗留下来的。我已经更新了我的答案。以上是关于使用 PowerShell 将多个 .accdb 文件转换为 .mdb?的主要内容,如果未能解决你的问题,请参考以下文章