-PR-
解決
済み

Access97で「パラメータが少なすぎる」のエラーとは?

  • すぐに回答を!
  • 質問No.77850
  • 閲覧数1079
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 73% (74/101)

Win98SE、VB6.0+SP3からAccess97のmdbを読んで処理するプログラムで、

On Error GoTo Err_Hndr
Set db = OpenDatabase(sDatabase)

sSQL = "select * from station WHERE compare.[stationNo] = 1;"
Set rs = db.OpenRecordset(sSQL, dbOpenSnapshot)

このSet rs文のあと、エラールーチンに飛んでしまいます。
エラーコードは3061(パラメータが少なすぎます。1を指定して下さい)
です。
このエラーはどういう意味で、どうやって解決すればいいのでしょうか?
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル3

ベストアンサー率 100% (1/1)

No.2で回答の自己レスです。
大変申し訳ありません。勘違いでした。
私が、解決したのは
・・・WHERE フィールド名 =" & 変数名 & ";"
というやり方でした。これならおわかりでしたよね。
今後はよく状況を把握して回答します。
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル10

ベストアンサー率 42% (79/186)

正確にそうだとはいえませんが、(.[stationNo] )の部分で、stationNOはパラメータだと認識していると思います。 やりたいことがはっきりわからないので正確にいえませんが、解消方法は、パラメータに値をセットするか、compareテーブルのstationNOフィールドが1のものという意味であれば、[]をとってください。(でもそれだと、SQL文自体がおかしいような気がしますが・・・) ...続きを読む
正確にそうだとはいえませんが、(.[stationNo] )の部分で、stationNOはパラメータだと認識していると思います。

やりたいことがはっきりわからないので正確にいえませんが、解消方法は、パラメータに値をセットするか、compareテーブルのstationNOフィールドが1のものという意味であれば、[]をとってください。(でもそれだと、SQL文自体がおかしいような気がしますが・・・)
お礼コメント
prome

お礼率 73% (74/101)

ありがとうございます。返事が遅れてすみません。
投稿日時 - 2001-05-31 09:37:26


  • 回答No.2
レベル3

ベストアンサー率 100% (1/1)

Accessはパラメータクエリーと認識しているようです。 私もこういう経験ありました。 compare.[stationNo]を変数に入れ、SQL文をちょっと面倒くさいですが ・・・ WHERE" & 変数名 & "=1;" のようにしたところ解決しました。 試してみてください。 ...続きを読む
Accessはパラメータクエリーと認識しているようです。
私もこういう経験ありました。
compare.[stationNo]を変数に入れ、SQL文をちょっと面倒くさいですが
・・・ WHERE" & 変数名 & "=1;"
のようにしたところ解決しました。
試してみてください。
お礼コメント
prome

お礼率 73% (74/101)

ありがとうございます。返事が遅れてすみません。
投稿日時 - 2001-05-31 09:36:43
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ