トップ回答者
不定フィールドの該当データをBetweenで抽出したい

質問
-
使用環境
VISUAL BASIC 2005 EXPRESS EDITION
WINDOWS XP
連日の質問をお許し下さい。
通常、2つの値の間に該当するデータを抽出する場合、下記のようにすれば良いのですが、フィールド名をフォーム等のコンボボックスで、任意に指定したい場合、[フィールド名]の部分はどのように記述すれば良いのでしょうか?
WHERE ([フィールド名] BETWEEN ? AND ?)
やりたいこと例)
○フォームの配置状況
コンボボックス1個(フィールド選択用)、テキストボックス2個(Between用)
○フォーム上のコード
Me.KizyunC_masterTableAdapter.FillBy3(Me.SuisituDataSet.kizyunC_master, ComboBox1.Text, TextBox1.Text, TextBox2.Text)
※これらによって指定する任意のフィールドに属するデータを抽出したい。
回答
-
みやり さんからの引用 WHERE ([フィールド名] BETWEEN ? AND ?)
SQLの中ではフィールド名をパラメタ化できないので、Fillの前にSQL文字列を編集するのがよいのではないでしょうか。
みやり さんからの引用 Me.KizyunC_masterTableAdapter.FillBy3(Me.SuisituDataSet.kizyunC_master, ComboBox1.Text, TextBox1.Text, TextBox2.Text)
このメソッドの中で、SelectCommandのSQL文字列を編集してみては。
例えば、文字列"フィールド名"を引数で受け取ったComboBox1.Textの値に置換。
または、選択され得るフィールド名の分だけTableAdapterにクエリを登録するとかでしょうか。
すべての返信
-
みやり さんからの引用 WHERE ([フィールド名] BETWEEN ? AND ?)
SQLの中ではフィールド名をパラメタ化できないので、Fillの前にSQL文字列を編集するのがよいのではないでしょうか。
みやり さんからの引用 Me.KizyunC_masterTableAdapter.FillBy3(Me.SuisituDataSet.kizyunC_master, ComboBox1.Text, TextBox1.Text, TextBox2.Text)
このメソッドの中で、SelectCommandのSQL文字列を編集してみては。
例えば、文字列"フィールド名"を引数で受け取ったComboBox1.Textの値に置換。
または、選択され得るフィールド名の分だけTableAdapterにクエリを登録するとかでしょうか。