ファイルディレクトリに問題があるようです。私はスタックオーバーフローの1つの投稿から、隠された[enter]または\ nが私のファイルのディレクトリにあることを知りました。私はそれを理解していない。ここに私のコードC#+アクセスエラー:無効なファイル名
私の接続文字列は次のとおりです。
public void loadTable()
{
try
{
con.Open();
OleDbCommand com = new OleDbCommand();
com.Connection = con;
string query = "SELECT * FROM ChequeMasterList";
com.CommandText = query;
OleDbDataAdapter da = new OleDbDataAdapter(com);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;
con.Close();
}
catch(Exception ex)
{
MessageBox.Show("Error: " + ex.Message);
}
}
をあなたはそれが非常に簡単で見ることができるように:
con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\CRDB\crdb.accdb;
Persist Security Info=False;";
、ここでは、私がやっているものです。私はちょうど私のDataGridView上に自分のデータベースをロードしたいのですが、私はこのエラーを取得し続ける:
私は、最近のC#システムの多くを行ってきた、これは私がこの問題に遭遇したの初めてです。あなたはなにか考えはありますか?
あなたのアクセスDBのようなサウンドは、あなたが思っている場所ではなく、何かがロックされてアクセスできない状態になっています。 32ビットに構築されていることを確認し、Loadイベントでコードを実行しないでください。コンストラクタを使用してください。 – LarsTech
@LarsTech何かがロックされているという意味ですか?うーん...どうしたらできますか?また、32ビットに構築することを意味しますか?申し訳ありませんが、これらの用語はすべて私にとって新しいようです。私はカジュアルなプログラマーであり、趣味としてしか行いません。 –
@LarsTech私は自分のドキュメントにあるAccessのデフォルトパスを使用しようとしましたが、同じエラーが発生しました。フォルダとファイルの名前を変更しようとしましたが、それでも同じエラーです。私はまた私のデータベースの場所を変更しようとしましたが、それでも同じエラーがありました。助けてください。 –