に一致する結果だけではなく、その後、テーブル全体のデータを返すSQL SELECT文を書いた:私はボタンのクリックで実行されます、次のコードを持っている私の検索
protected void Button2_Click(object sender, EventArgs e)
{
String str = "SELECT * " +
"FROM ConcernTicket INNER JOIN Employee " +
"ON ConcernTicket.EmployeeReportedToID = Employee.EmployeeId " +
"WHERE (Employee.FirstName LIKE '%' + @search2 + '%')";
SqlCommand xp = new SqlCommand(str, vid);
xp.Parameters.Add("@search2", SqlDbType.NVarChar).Value =
TextBox1.Text;
vid.Open();
xp.ExecuteNonQuery();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = xp;
DataSet ds = new DataSet();
da.Fill(ds, "Employee.FirstName");
GridView2.DataSource = ds;
GridView2.DataBind();
vid.Close();
}
私が直面しています、問題があることです検索はエラーなしで実行されますが、FirstName変数が一致する場所に結果を返す代わりに、現在の懸念チケットがすべて表示されます。私はそれがSELECTステートメントでかなり簡単な修正だと仮定していますが、何らかの理由で私は何がうまくいかないのか把握できませんでした。私はちょうどSQLとの作業を始めたので、私はこのような愚かな問題を抱えていることをお詫びします。
なぜあなたは 'ExecuteNonQuery'と呼ばれていますか?あなたのコードは私の質問のように見えます。 –
dbに送信するクエリを確認する必要があります。 http://stackoverflow.com/questions/1412863/how-do-i-view-the-sql-generated-by-theentity-framework –
私はあなたがデータベースに渡す '@ search2'の値を調べます。すべての結果を取り戻す場合は、 'WHERE(Employee.FirstName LIKE %%)'を送信するコードエラーが発生している可能性があります。英語では基本的にパーサーに、従業員の名前が気にかからないことを伝えています。 – DanK