- ベストアンサー
クエリのパラメータ
お世話になります。 ASP.netの勉強中です。 クエリのパラメータに関して、わからないことがあり、質問させて頂きます。 SqlDataSourceのクエリでパラメータを指定する場合は"@"を指定すればよいと 言うことを調べたのですが、@を指定してクエリを作成したところパラメータとは 認識されず、文字列となり、パラメータの定義の画面が表示されません。 (クエリは以下のようになります。) SELECT 形状マスタ.* FROM 形状マスタ WHERE ([コード] = @CD) "@CD"を"?"にすると、パラメータの定義画面が表示され、実行した場合も パラメータとして認識されています。 出来れば"@"でパラメータを指定したいので、教えて頂ければ幸いです。 初歩的な質問で申し訳ありませんが、よろしくお願い致します。
- ThunderAce
- お礼率31% (27/87)
- Microsoft ASP
- 回答数2
- ありがとう数3
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
PARAMETERS [@CD] Long; SELECT 形状マスタ.* FROM 形状マスタ WHERE (((形状マスタ.コード)=[@CD])); とか。 @CD は [ と ] でくくる。 デザインビューのパラメータ指定画面で [@CD] と型を指定する。 その結果が上記の SQL です。 私は Access でもパラメータには @ をつけてますね。
その他の回答 (1)
- aspnet
- ベストアンサー率79% (72/91)
Access MDB使ってるんと違います? SQL Serverなら「@なんちゃら」を使えますが、ACCESSだと使えません。
お礼
回答ありがとうございます。 MDBは使用していません。 SQL SERVERをODBC接続で行っております。
関連するQ&A
- htmlでコンボボックスのパラメータを指定したい
環境 asp.net htmlでコンボボックスをセットしています。 以下のDefaultValueの値をコントロール名にしたいのですがどのように記述すればよいのでしょうか? <asp:SqlDataSource ID="sqlddl1" runat="server" ConnectionString="<%$ ConnectionStrings:xxxConnectionString %>" SelectCommand="SELECT CD, NAME FROM TABLE WHERE (CD = @CD)"> <SelectParameters> <asp:Parameter DefaultValue="123" Name="CD" Type="String" /> </SelectParameters> </asp:SqlDataSource>
- ベストアンサー
- HTML
- Accessのパラメータクエリを他のクエリから呼ぶ
VBAで日付を指定してSelectするクエリなのですが、同じ処理をたくさんつくるのが嫌なので、 パラメータクエリにしたいのですが、、、 例えば、 日別売上クエリ: Parameters pDate datetime; を持つ (VBAから直接呼ぶのはこれだけ) このクエリは、以下の2つのJoinからなる 日別レジ別売上クエリ: 下位クエリで、Parameters pDate datetime; を持つ (客数を得るクエリ) 日別部門別売上クエリ: 下位クエリで、Parameters pDate datetime; を持つ (金額を得るクエリ) 共に、Where を日付=pDateとしてます。 そうしておいて、VBAから set rs1=DB1.Openrecordset(”Select 、、、、From 日別売上クエリ(#” & strDate & ”#) ”) とやったのですが、ダメでした。 パラメータクエリを他のクエリから呼ぶ構文をお教え下さい。 尚、「パラメータクエリをクエリから呼」や「パラメータクエリをSQLから呼」でGoogleったのですが、 見つかりませんでした。
- ベストアンサー
- その他(データベース)
- Accessのクエリのパラメーター
毎回ここでお世話になっております。 2つ質問がありまして一つは・・・ パラメーターで複数のレコードを指定できるのかということです。 例えば、オートナンバー型にパラメーターを設定していて、1番と3番のレコードだけを表示する(2番のレコードは除く)方法はあるでしょうか? もう一つは・・・ パラメーターでワイルドカードは使えますか? 使えない場合、クエリでわざわざ条件抽出する以外で、ワイルドカードを適応させる方法をお教えください。 以上2つの質問お願いします。
- ベストアンサー
- その他MS Office製品
- パラメータークエリの抽出ができません
アクセスで、抽出条件に「>=[いつから] And <=[いつまで]」と日付の範囲指定をしてデータを抽出するクエリを作りましたが、表示されるパラメータに日付を入力して実行してもすべてのデータが表示されてしまいます。 どうしてでしょうか?
- 締切済み
- その他(データベース)
- パラメータクエリで抽出がうまくいきません。
選択クエリにて、ある日付から今日までの日付をdateiff関数で求め、 それを、DateDiff("m",[最終交換日],Date())という形で、何ヶ月経ったか表示しています。 そこまでは問題なかったのですが、 このクエリをパラメータで条件指定させようとするとうまくいきません。 たとえば、選択クエリのデザインビューで、抽出条件に、>=9、と直接入力すると、 9ヶ月以上のレコードを抽出するのですが、 >=[何ヶ月以上経ったものを探しますか?]と入力し、 パラメータ入力のウィンドウで9を入力すると、抽出されません。 どの数値を入力しても、直接入力ではうまくいくのですが、 パラメータウィンドウから入力するとダメのようです。 いろいろ参考になりそうサイト等見てはみましたが、 原因となりそうなものを見つけることができませんでした。 これが原因では?と、お分かりになる方、 是非教えていただきたく思い、質問いたしました。 よろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- 選択クエリで偶数月しか表示しない。パラメータについて教えてください。
顧客データを月ごとにまとめるために選択クエリを作成しました。パラメータには月とテキスト形式といれています。奇数月は表示されず、偶数月のみまとめてくれます。パラメータを設定せずに条件に奇数を打ち込むとちゃんと表示します。パラメータの指定方法がおかしいのでしょうか?よろしくお願いします。
- ベストアンサー
- その他(データベース)
- Accessのパラメータクエリに入力規則は設定できますか?
Accessのパラメータクエリを作成した場合に表示されるダイアログボックスに入力する際に日本語入力のオン・オフを切り替える設定はできるのでしょうか? 例えば「担当者CD」が「130」と入力させる場合です。
- ベストアンサー
- その他MS Office製品
- SQLファイルでのパラメータ指定の方法
いつもお世話になっております。 以下のようなスクリプトを含むSQLファイルで「1234」を何回も記述したくないので、スクリプト上部で1回パラメータ指定する書き方をご教授願います。実行はSQLServerのクエリアナライザで行いたいです。 SELECT * FROM 顧客 WHERE 会社CD=1234; SELECT * FROM 商品 WHERE 会社CD=1234; よろしくお願いします。
- ベストアンサー
- SQL Server
- x.aspxとx.aspx.vbの値の受渡について
asp.net4で開発を実施しております。 FormViewを使ってデータの登録を行おうとしております。 form1.aspx.vbで設定した変数を、form1.aspx側のsqlにて使いたいと思っているのですが、どのようにすればよいでしょうか? 【form1.aspx.vb】 sub aaa = 1 end sub 【form1.aspx】 : <asp:SqlDataSource ID="SqlDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:DB1ConnectionString %>" DeleteCommand="UPDATE Table1 SET [Flg1] = @aaa WHERE [CD] = @CD" <DeleteParameters> <asp:Parameter Name="CD" Type="String" /> <asp:Parameter Name="aaa" Type="String" DefaultValue="<%= aaa %>" /> のように作ってみたのですが、うまくいきません。 どの様にすればよいのかご教示いただければと思います。 よろしくお願い致します。
- 締切済み
- Microsoft ASP
- ASPで画面間のパラメタ受け渡し
こんばんは。ASP初心者です。 ASPでWEBページの作成を行っています。画面遷移をResponse.Redirect()で行っているのですが、遷移前のページと遷移後のページでパラメタを受け渡したい場合はSession("hoge") = "hogehoge"のようにセッションに入れる以外、何か方法はないでしょうか。リクエスト間でパラメタ渡せればがいいので、セッションを通じて保持しておく必要がないのです。クエリを使用するとアドレス欄に変数の値が見えてしまうのでできれば使いたくありません。
- ベストアンサー
- Microsoft ASP
お礼
回答ありがとうございます。 納得できました。 とりあえず、今回は?で作ってみました。 近いうちに試してみます。 丁寧な回答ありがとうございました。