出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

ACCESSのデーターベースの選択操作?   まぁさん [2003/07/09 16:04:51] [3487]
  Re:ACCESSのデーターベースの選択操作?   RiUさん [2003/07/09 17:40:18] [3488]
  Re:ACCESSのデーターベースの選択操作?   ひでかずさん [2003/07/09 18:42:21] [3489]
    Re:ACCESSのデーターベースの選択操作?   まぁさん [2003/07/10 11:15:25] [3490]
      Re:ACCESSのデーターベースの選択操作?   ひでかずさん [2003/07/10 15:36:09] [3492]
      Re:ACCESSのデーターベースの選択操作?   ひでかずさん [2003/07/10 15:44:07] [3493]
        Re:ACCESSのデーターベースの選択操作?   まぁさん [2003/07/10 16:04:08] [3494]

[3487] ACCESSのデーターベースの選択操作?
投稿者:まぁさん 2003/07/09 16:04:51
いつも お世話になってます。
ASPで ACCESSのデーターを取り込むとき
下記のように 記述してオブジェクトを作成するさいに
SQLで ユーザーが フォームなどで 選択したあたい
例えば No = a
を a を 変数で
ユーザーが 入力した値が a に 代入して
検索みたいなのは どうすればいいのでしょうか??
dim a as String
Formの値 が "りんご" の場合
a = "りんご"

Where No = "りんご"
後から オブジェクトを 宣言 すると エラーになって
しまいました。
どこに 変数を StrSQLを 示せばいいのでしょうか?
ご指導 お願い致します。

<%
Set Access1 = Server.CreateObject("ADODB.Connection")
Access1.open = "ASPTEST"
Set ARecord = Server.CreateObject("ADODB.recordset")

StrSQL = "Select * From table1 where No = a"

ARecord.Open StrSQL,Access1
%>

[3488] Re:ACCESSのデーターベースの選択操作?
投稿者:RiUさん 2003/07/09 17:40:18
RiUです。

> StrSQL = "Select * From table1 where No = a"

StrSQL = "Select * From table1 where No ='"&a&"'"

[3489] Re:ACCESSのデーターベースの選択操作?
投稿者:ひでかずさん 2003/07/09 18:42:21
StrSQL = "Select * From table1 where No = a"
では、変数内の値ではなく『a』という文字と一致するものを抽出しようとしてしまいます。

上記でSQL文でエラーになるとのは、記述の仕方が違うからですね。
変数内の値と一致するものを抽出させたいのなら、
StrSQL = "Select * From table1 where No = '" & a & "'"
ベタ打ちの文字と一致するものを抽出させたいのなら、
StrSQL = "Select * From table1 where No = 'a'"
となります。

[3490] Re:ACCESSのデーターベースの選択操作?
投稿者:まぁさん 2003/07/10 11:15:25
ありがとうございます。Riuさん ひでかずさんの
おかげで なんとか 変数に 値を Where 文に いれることが できました。
しかし
Where A = '" & Hen & "' and B = '" & Hen2 & "' and c = '" & Hen3 & "'"

の ように 条件文を 3つか 4 ツ 程 つなげて やっていこうとして
改行すると
エラーになってしまいます。

そして 下記の ような ソースを書いてみました。
■■■■■■■■■■■■■■■■■■■■■■■■
StrSQL = "Select * From table1"

StrSQL = StrSQL & " where No1 = '" & Hen & "' and Name
= '" & Sha & "'"
■■■■■■■■■■■■■■■■■■■■■■■■
これは うまく いくのですが
そのあと もう 1文付足すと エラーになってしまいます。
どうすればいいでしょうか??
■■■■■■■■■■■■■■■■■■■■■■■■■■■■
StrSQL = "Select * From table1"

StrSQL = StrSQL & " where No1 = '" & Hen & "' and Name
= '" & Sha & "'"

StrSQL = StrSQL & " where No 2 = '" & Hen & "' and Name2
= '" & Sha & "'"


■■■■■■■■■■■■■■■■■■■■■■■■■■■■
やりたいことは ただ
Where 文に 4 つの 条件を and で 入れていきたいのですが。
3 つ目とかに なったら 改行 せざるを えなく
改行 すると _& が うまく できず エラーになってしまうので

SQLStr = SQLStr &
で SQLStr を 拡張したいのですが
2回目の 拡張で おかしくなってしまいます。














[3492] Re:ACCESSのデーターベースの選択操作?
投稿者:ひでかずさん 2003/07/10 15:36:09
2回目の拡張の際に、また『where』が入っているからではないでしょうか?

SQL文にwhereが2つ入っているのでエラーになったのだと思います。

NO2の前のwhereをandに変えれば出来ると思いますよ。
条件文(where)を書くとき、2つ目以降はandを使います。

SQLStr = SQLStr &
を使って何行か書くにしても、出来上がるのは1つのSQL文なので、
次の行に行ったとしてもwhereは1つしか使えないです。

以上、お試しあれ。

[3493] Re:ACCESSのデーターベースの選択操作?
投稿者:ひでかずさん 2003/07/10 15:44:07
付けたしです。

まぁさんの書いた
> ■■■■■■■■■■■■■■■■■■■■■■■■■■■■
> StrSQL = "Select * From table1"
>
> StrSQL = StrSQL & " where No1 = '" & Hen & "' and Name
> = '" & Sha & "'"
>
> StrSQL = StrSQL & " where No 2 = '" & Hen & "' and Name2
> = '" & Sha & "'"
> ■■■■■■■■■■■■■■■■■■■■■■■■■■■■
だと
where NO1='Henの値' and Name='shaの値' where NO2='Henの値' and Name2='Shaの値'
な条件文になってしまうということです。
なので、↓こんな感じにすれば出来るはずです。
where NO1='Henの値' and Name='shaの値' and NO2='Henの値' and Name2='Shaの値'

[3494] Re:ACCESSのデーターベースの選択操作?
投稿者:まぁさん 2003/07/10 16:04:08
ありがとうございます。
おかげさまで うまくできました。
すこしずつですが
できてきて
とても 嬉しいです。
またなにかあったら よろしくお願い致します。



TreeBBS For ASP V.0.1.3
Program By YasNet