アプリ版:「スタンプのみでお礼する」機能のリリースについて

単純なSQLの実行命令なのですが、
下記のエラーメッセージが出て実行できません。
解消方法をご存知の方がいらっしゃいましたら、
教えてください。よろしくお願いします。

エラーメッセージ:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] パラメータが少なすぎます。1 を指定してください。
/x_db/1.asp, line 12


(Set RS = db.Execute(SQL)のラインがエラーです)



ソースです。
<%
Set db = Server.CreateObject"ADODB.Connection")
db.Open "x_db"
SQL = "select * from x_db where w_xpc ='" & Request.Form("F01") &"'"
Set RS = db.Execute(SQL)

Response.Write(RS.Fields("氏名"))

RS.close
set RS = nothing
db.close
set db = nothing
%>

環境:WIN200server IIS5.0 access97

A 回答 (2件)

> パラメータが少なすぎます。

1 を指定してください。
・・・(略)・・・
> SQL = "select * from x_db where w_xpc ='" & Request.Form("F01") &"'"

(1) x_db というテーブルが存在しない。
(2) w_xpc という列が x_db テーブルに存在しない。
(3) w_xpc 列は文字列ではない。
(4) Request.Form("F01")に特殊な文字(シングルクォートなど)が含まれている。

のどれかだと思います。
    • good
    • 0
この回答へのお礼

早速のアドバイスをありがとうございます。
(1)~(4)の指示をじっくり見てみると。。。
その通りでした! 出来ないと思ってパニックになっていたので、基本的な所を見落としていました。
ホントに、恥ずかしいです。(赤面)
わからなくなったら「頭を冷やして、基本に戻れ」ですね。
ありがとうございました!

お礼日時:2003/03/07 15:43

SQL = "select * from x_db where w_xpc ='" & Request.Form("F01") &"'"



この行の最後に セミコロンを付け加えてみたらどうでしょうか?

SQL = "select * from x_db where w_xpc ='" & Request.Form("F01") &"';"
    • good
    • 0
この回答へのお礼

早速のアドバイスをありがとうございます!
#1の方のアドバイスで解決できました。
パニックになったら、頭を冷やさないと駄目ですね。
お騒がせしました。

お礼日時:2003/03/07 15:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A