SQL パラメータを含む SQL クエリ ステートメントを含む文字列を受け取る Web フォームに取り組んでいます。SqlCommand
パラメータごとに ASP.NET コントロールを生成し、各コントロールの値を、が を埋めるために使用する SQL クエリ文字列のパラメータに割り当てますDataAdapter
。
オプションのパラメータを管理するのに問題があります。
元。
1) 文字列をページに渡します。
string query = "SELECT * FROM Table WHERE Field1=@P1 AND field2=@P2";
2) パラメータごとに Web コントロールを生成する
TextBox P1 = new TextBox();
P1.ID = "P1";
...
TextBox P2 = new TextBox();
P2.ID = "P2";
...
PanelParameters.Controls.Add(P1);
PanelParameters.Controls.Add(P1);
3) クリックすると、各パラメータの値がSqlCommand
as パラメータに渡されます。
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@P1", P1.Text);
cmd.Parameters.AddWithValue("@P2", P2.Text);
4) ここでOK!
しかし、パラメータがOPTIONALの場合、どうすればそれを管理できますか?
P2 = NULL
P2 がオプションの場合、ユーザーはそれをコンパイルできず、その場合は設定(パラメーターの値の設定)したくありませんDbNull.Value
が、P2 がクエリ SQL から消えてほしいと思います。
手伝って頂けますか?
* UPDATE * 非常に複雑な SQL ステートメントが含まれているため、受け取ったクエリを編集できません。