2016-03-22 71 views
1

我需要將約50個.accdb文件轉換爲.mdb。我知道有一種方法可以在Access中執行它,但我寧願不打開50個Access數據庫來手動轉換每個數據庫。使用PowerShell將多個.accdb文件轉換爲.mdb?

在PowerShell中可以這樣做嗎?只是重命名擴展就夠了,還是比這更復雜?

+0

只是更改文件擴展名是絕對不夠的。查看是否可以使用PowerShell中的[DBEngine.CompactDatabase方法](https://msdn.microsoft.com/en-us/library/bb220986(v = office.12).aspx)。請注意,如果您的ACCDB包含MDB格式不支持的功能,轉換嘗試可能會失敗。 – HansUp

回答

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() 
+0

我得到了這個工作,但我不得不從acFileFormatAccess2000前面拿'$',而是把它放在引號中。 – danglesauce19

+0

@ chrisdoubleu13 - 對,對不起。這一行代碼從一些早期的嘗試中遺留下來。我已經更新了我的答案。 –

相關問題