我們有一個應用程序,它使用OLEDB和Jet引擎Microsoft.Jet.OLEDB.4.0。我們正在將我們的應用程序轉換爲也以64位模式運行。但是,數據庫引擎不再是64位Windows的標準部分。但是,Office 2010 64位確實安裝了64位訪問數據庫引擎(請參閱http://www.microsoft.com/downloads/en/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en),以便您可以使用Microsoft.ACE.OLEDB.12.0。Jet數據庫32和64位和替代品
所以我正在解決問題,以便我們的應用程序也運行在64位模式。但OLEDB代碼抱怨數據庫引擎未被註冊。所以我嘗試在上面的鏈接上安裝可再發行的64位引擎。但它告訴我,我需要先卸載32位Office 2007。我不會那樣做,因爲我確信一些設置等將會丟失。
所以我的問題是: 32位數據庫訪問組件如何不能在64位模式下工作,但如果32位已經安裝,你不能安裝64位的?這對任何人都有意義嗎?!
我意識到微軟希望人們切換到SQL Server Express,除非它具有侵入性,即使在乾淨的新Windows 7計算機上也能可靠地安裝,並且在不同機器之間複製或移動數據並非易事。那麼是否有適合Jet的替代方案?一些簡單但適用於32位和64位,理想情況下具有OLEDB和ODBC支持的東西? SQLite看起來很有希望嗎?
我認爲使用正確的ODBC管理器存在一些棘手的問題。我不做這種發展,但剛剛閱讀了它。我建議你通過關於64位Jet/ACE的SO問題進行搜索,因爲我很確定你的問題已經被其他人遇到了,並且提供了一個解決方案,我記得它相當簡單(並且不明顯)。 – 2011-05-06 01:59:27
另一個問題是,64位ACE與Office 2010 32位不兼容。因此,如果您的用戶安裝了Office 32bit,則您的64位解決方案將失敗。 – 2012-06-27 13:27:06