2016-05-10 3 views
1

アプリケーションは、VB.NETから.mdb(MS Access 2000)ファイルを作成する必要があります。我々は、接続文字列64ビット.NETアセンブリからAccess 2000データベースを作成する方法は?

プロバイダ= Microsoft.Jet.OLEDB.4.0として使用して、このためにADOXを使用しています。ジェットOLEDB:Engineの種類= 5;

これはうまくいきます。しかし、今ではアプリケーションの64ビットコンパイルを許可したいと考えています。 Jet 4.0エンジンは32ビットのみであるため、接続文字列内のプロバイダをACE 12.0に変更する必要があります。ただし、このプロバイダを使用すると、MS Access 2000(.mdb)ファイルが必要な間にMS Access 2010(.accdb)ファイルが作成されます。

どうすればこの問題を解決できますか?

+2

本当に効果がありますか? - ここに問題があれば、[access 2000](https://support.microsoft.com/en-gb/lifecycle?p1=1265)は7年前の*拡張*サポートからも脱落したことに留意してください。時には、 "十分である"と言うことが必要な場合もあります。 –

+0

@Damien_The_Unbelieverは良い点を持っていると思います...日付が付けられたものは永遠に少なくても支持されなくなります。後でアクセスするデータベースに切り替える(またはSQLiteまたはSQL Serverをより優れたものにする) – Basic

答えて

1

まあ、我々は

プロバイダ= Microsoft.ACE.OLEDB.12.0で私たちの運を試してみました。ジェットOLEDB:Engineのタイプ= 5;

よろしくお願いします:うまくいくようです!

1

あなたはそうのように、代わりにADOXのACEのDAOを使用することができます。

' required COM reference: 
'  Microsoft Office 14.0 Access Database Engine Object Library 
' 
' Imports Microsoft.Office.Interop.Access.Dao 
' 
Dim dbe As New DBEngine 
dbe.CreateDatabase("C:\path\foo.mdb", LanguageConstants.dbLangGeneral, DatabaseTypeEnum.dbVersion40) 
関連する問題