1

ASP.NETプロジェクトでデータベースFoo.accdbを使用できるようにします。 接続するにはどうすればよいですか?プロジェクトを別のコンピュータに移植してまだ動作させることができるようにしたいので、データベースファイルをプロジェクトフォルダ(Default.aspxがあるフォルダと同じフォルダ)に配置するだけですか?ASP.NETを使用してAccessデータベースに接続

データベースをVisual Studioにインポートする必要はありますか?

OleDbクラスのクラスを使用してデータを操作できるようにしたいだけです。これがすべてであれば、Web.configに関連するWeb.config内のパスは?

だから私の接続文字列は次のように次のようになります。一般的に

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Foo.accdb;User Id=admin;Password=;

+0

http://forums.asp.net/t/1352561.aspx/1?Connect+Access+2007+database+from+ASP+net+aspx+ –

答えて

2

、人々はこのためにApp_Dataフォルダを使用します。

Aが完全に例を働いていたが、ここにある:http://msdn.microsoft.com/en-us/library/445z2s49(v=vs.80).aspx

構造の中でそれを持つことの利点は、あなたが一度にサイトとデータを移動できることです。ただし、サイトが侵害された場合でも、データベースが利用可能になる場合があります(デフォルトでは、このフォルダからファイルを提供しないように設定されています)。このため、多くの人がWebサイト外のフォルダに格納することを選択しています。

また、Accessは実際には複数のユーザーデータベースではないため、複数のユーザーが一度にデータベースにアクセスする場合は問題が発生する可能性があります。

また、絶対パスまたは相対パスを使用して、接続文字列のアクセスmdbを特定できます。 MSDNリンクのデータソース追加ステップが生成するコードを見てください。

+0

私はそれをApp_Dataフォルダに追加しました。私は接続文字列で何を使用しますか?私は 'OleDbConnection =新しいOleDbConnection(?????)'としてDim connを持っています。 Web.configに接続文字列が追加されていますが、OleDbConnectionコンストラクタに渡すときにIntellisenseがキャッチしていません。 –

+0

接続文字列はどのように定義しましたか? web.configのApplicationSettingsまたはConnectionStringsを介して?接続文字列は次のようになります。 "Provider = Microsoft.ACE.OLEDB.12.0;データソース= | DataDirectory | \ Foo.accdb;セキュリティ情報を保持する= False;これを「Foo」という名前の接続文字列の下に置くと、System.Configuration.ConfigurationManager.ConnectionStrings ["Foo"]で取得できます。ConnectionString – dash

+0

ええ、 'ConfigurationManager.ConnectionStrings(" Foo ")を使用しました。 'それは働いた。それが私が探していたものです。ありがとう。 –

関連する問題