このコードを使用すると、テーブル内のすべての行が返されますが、その理由がわかりません。
string SelectOleDb = "SELECT Top 1 * From `Employee Info` Where [Employee Name]=@EmployeeName" Order By ID DESC";
OleDbConnection OleDbCon = new OleDbConnection(EmployeeInfo.Properties.Settings.Default.cstrEmployeeInfoDatabase);
OleDbDataAdapter OleDbAdpt = new OleDbDataAdapter();
OleDbCommand OleDbCom = new OleDbCommand(SelectOleDb, OleDbCon);
OleDbCom.Parameters.AddWithValue("@EmployeeName", employee_NameComboBox.Text);
OleDbAdpt.SelectCommand = OleDbCom;
DataSet FooDS = new DataSet();
OleDbCon.Open();
OleDbAdpt.Fill(FooDS);
OleDbCon.Close();
OleDbCon.Dispose();
DataTable EmployeeInfo = FooDS.Tables[0];
また、従業員名列の値をコピーしてテキスト ボックスに貼り付け、有効な従業員名を使用していることを確認しました。ただし、ステートメントが正しくない場合は、すべての代わりに何も返されないと予想されます。
更新:名前付きパラメーター「@EmployeeName」を削除し、単一引用符で囲まれたハードコードされた名前を入力しようとしました。まだステートメントは従業員情報のすべてを返します