我需要將約50個.accdb文件轉換爲.mdb。我知道有一種方法可以在Access中執行它,但我寧願不打開50個Access數據庫來手動轉換每個數據庫。使用PowerShell將多個.accdb文件轉換爲.mdb?
在PowerShell中可以這樣做嗎?只是重命名擴展就夠了,還是比這更復雜?
我需要將約50個.accdb文件轉換爲.mdb。我知道有一種方法可以在Access中執行它,但我寧願不打開50個Access數據庫來手動轉換每個數據庫。使用PowerShell將多個.accdb文件轉換爲.mdb?
在PowerShell中可以這樣做嗎?只是重命名擴展就夠了,還是比這更復雜?
只是重命名擴展名就夠了,還是比這更復雜?
肯定比它更多。
下面的代碼似乎爲我工作。它至少轉換了表格。 .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前面拿'$',而是把它放在引號中。 – danglesauce19
@ chrisdoubleu13 - 對,對不起。這一行代碼從一些早期的嘗試中遺留下來。我已經更新了我的答案。 –
只是更改文件擴展名是絕對不夠的。查看是否可以使用PowerShell中的[DBEngine.CompactDatabase方法](https://msdn.microsoft.com/en-us/library/bb220986(v = office.12).aspx)。請注意,如果您的ACCDB包含MDB格式不支持的功能,轉換嘗試可能會失敗。 – HansUp