という名前のAccessテーブルがありTable1
、その名前には。という名前のフィールドがありますFieldA
。FieldA
テキストのデータ型がありました。
FieldA
値010005が含まれています。
クエリを実行すると、一致するものが見つかりません。Access内でクエリを実行すると、値が見つかります。
OleDbConnection conn = null;
OleDbDataReader reader = null;
conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=\\\\server\\folder\\mydatabase.accdb");
conn.Open();
OleDbCommand cmd = new OleDbCommand("Select * FROM Table1 WHERE FieldA = @p1", conn);
cmd.Parameters.Add("@p1", OleDbType.VarChar);
cmd.Parameters["@p1"].Value = "010005";
reader = cmd.ExecuteReader();
dataGridView1.DataSource = reader;
ここで何が欠けていますか?
ありがとうございました!
編集:これはうまくいきました、そして私が使用することになったものです:
OleDbConnection conn = null;
conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=\\\\server\\folder\\mydatabase.accdb");
conn.Open();
string theValue = "010005";
string sql = string.Format("SELECT * FROM Table 1 where FieldA = '{0}'", theValue);
OleDbDataAdapter ada = new OleDbDataAdapter(sql, conn);
ada.Fill(dataTable1);
dataGridView1.DataSource = dataTable1;