こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

SQLでエラーです。

VB初心者質問です。
開発環境 VB6 SP6
WIN2000 
VB6からADOを使いMDBのテーブルにSQLで検索しようとしましたがエラーになります。
(状態)
mySQL = SELECT * FROM ABC WHERE ABC.あああ-いいい = 123
Set Rec = Cnn.Execute(mySQL)

(エラーメッセージ)
実行時エラー'2147217904(80040e10)'
1つ以上の必要なパラメータの値が設定されていません。

同様の処理を別テーブルで行っていますがエラーになりません。
気になる点は項目名称(あああ-いいい)にハイフンが
入っていると思い、ダブルコーテーションで
”あああ-いいい”でくくってみましたが、
これだとエラーになりませんが文字列で判定されて
いるようです。結果抽出されません。
どなたかアドバイスお願いいたします。


 

投稿日時 - 2006-04-25 10:31:16

QNo.2112871

暇なときに回答ください

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

mySQL = SELECT * FROM ABC WHERE ABC.[あああ-いいい] = 123

これでどでしょ?

投稿日時 - 2006-04-25 13:15:56

お礼

ありがとうございます。
動作しました。

投稿日時 - 2006-04-25 13:33:47

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

お世話になります。

あああ も いいい も
テーブル ABC に存在しているのですか?

SELECT * FROM ABC
WHERE
(ABC.あああ - ABC.いいい) = 123
ではどうでしょう。

投稿日時 - 2006-04-25 13:04:54

お礼

こちらの説明が不十分で申し訳ございません。
補足します。
あああ-いいい は一つの項目名です。
項目名にハイフンを使っています。
試しに
SELECT * FROM ABC  
WHERE
(ABC.あああ-いいい) = 123 と

SELECT * FROM ABC  
WHERE
(ABC.[あああ-いいい]) = 123 の2つ
を試しました。
前段は状態変化無し、
後段は文法エラーでした。

投稿日時 - 2006-04-25 13:21:29

あなたにオススメの質問