C#とSQLServerでアプリケーションを作っているのですが、以下の点で困っています。
テーブルA(以下T_A)から開始日と終了日が指定した期間のデータを抜き出そうとしています。
そこで、データアダプターをツールボックスから配置し、その中に以下のSQLを設定しています。
フィールド名をf1、f2、f3、f4とします。日付はf4に入っています。
Select f1,f2,f3
From T_A
Where ( f4 BETWEEN @SD AND @ED)
そして、プログラムのコード上から、@SDと@EDにデータを入れたいのですが、
その部分で行き詰っています。
sqlDataAdapter1.sqlSelectCommand2.Parameters["@SD"].value = "2005/01/01";
sqlDataAdapter1.sqlSelectCommand2.Parameters["@ED"].value = "2005/01/31";
というようなコードを記述しますと、ビルドエラーとして、
System.Data.sqlClient.SqlDataAdapterにsqlSelectCommand1の定義がありません
静的でないフィールド、メソッド、またはプロパティ'プロジェクト名.Form1.sqlDataAdapter'で、
オブジェクト参照が必要です。
と出ます。
public class Form1には、それぞれの記述が確認できますので、更に謎なのです。
ちなみにデータセットのプレビューにて、それぞれの変数を指定してやると、取得結果は正しく抽出できます。
どなたか、何かお気づきの点はないでしょうか?
アドバイスをよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
OleDbしか使ったことないのですがお答えします。
sqlSelectCommand2はsqlDataAdapter1のプロパティではないので
sqlDataAdapter1.sqlSelectCommand2のような書き方は出来ないです。
sqlDataAdapter1.SelectCommand = sqlSelectCommand2;
sqlSelectCommand2.Parameters["@SD"].value = "2005/01/01";
で出来ると思います。
sqlDataAdapter1のSelectCommandにsqlSelectCommand2を入れたので
sqlDataAdapter1.sqlSelectCommand2のような書き方をしたのだと思いますが
変数と同じでどんな値を入れてもプロパティ名までは変わらないです。
データアダプタからつなげて書くとしたら
sqlDataAdapter1.SelectCommand.Parameters["@SD"].value = "2005/01/01";
※SelectCommandを先に設定する必要があります
とします。
sakuhatさん、回答ありがとうございます。
回答に頂いた内容は、「そういうことか!」とわかり、実行に移ったのですが、
結果としてエラーが出ます。
System.Data.sqlClient.sqlParameterにvalueの定義がありません。・・・I
"プロジェクト名.Dataset1"は'クラス'を意味しますが、'変数でなければなりませn'
静的でないフィールド、メソッド、またはプロパティ'プロジェクト名.Form1.sqlDataAdapter1 'で、オブジェクト参照が必要です。
と、出ます。
Iは、「sqlDataAdapter1.SelectCommand」部分に、それ以外は、valueを設定している第2文を指定しているようです。
回答内の※の部分は、sqlDataAdapter1のSelectCommandプロパティ内に書かれています。
もう一度、作り直してみますが、何かお気づきの点がありましたら、よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XMLでデータとして画像を指定す...
-
「Nullの使い方が不正です」の...
-
【C#】textBoxの指定行のデータ...
-
C# DataTableに最後に追加した...
-
部品表
-
VBAでアクセスDBからデータの取...
-
富士通(汎用機)のAIMについて
-
Excel VBAでグラフの可変データ...
-
VB2010で、選択した系列を最前...
-
エクセルのマクロ コンボボッ...
-
MSFlexGrid 行選択状態
-
COBOL数値転記の仕様
-
ExcelVBAで戻り値を返すには
-
C#、ADO.Netでのパラメータの指...
-
ActiveReportでデータが0件の場...
-
access vba 『○○件づつ表示』を...
-
エクセルVBAのリストボックスの...
-
BCBのStringGridでデータ修正の...
-
Excel VBAでフォルダ内の全テキ...
-
エクセルVBA ワークシート関数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【ExcelVBA】値を変更しながら...
-
「Nullの使い方が不正です」の...
-
【C#】textBoxの指定行のデータ...
-
VBAでアクセスDBからデータの取...
-
XMLでデータとして画像を指定す...
-
【VB.NET】Excelの最終行までの...
-
C# DataTableに最後に追加した...
-
Excel VBAでフォルダ内の全テキ...
-
VBAコンボボックスの内容が反映...
-
COBOL数値転記の仕様
-
エクセルのセル最終行取得
-
エクセルデータをVBで検索でき...
-
アクセスでウェブ上のデータを...
-
batでレジストリキーから読み取...
-
富士通(汎用機)のAIMについて
-
非同期のプロセス間通信(パイプ...
-
エクセルのCSV読み込みについて
-
MSFlexGrid 行選択状態
-
java / jsp selectedについて
-
Excel VBA で日付を4ケタの数値...
おすすめ情報