2011-07-21 5 views
2

私は、コードのこの部分を実行しようとしている:VBAへのアクセス:WHERE句の構文エラー、可能な型の競合ですか?

strSQL = "SELECT * FROM ORDER_DATA WHERE ORDER=" & curOrder 
    Set rst_orderData = db.OpenRecordset(strSQL) 

ORDER_DATAからORDER列は、二重数値型で、curOrderは、同様のタイプのダブルです。

エラーが2行目を指していると、「WHERE句の構文エラー」と表示されます。

なぜこれはだと思いますか?それは可能な型の競合ですか?

ご協力いただきましてありがとうございます。ありがとうございました!

+0

通貨で一般的に使用される接頭辞を使用してdouble型の変数を指定したのはなぜですか?どうして 'dblOrder'?通貨は暗黙のうちに二倍になる可能性があり、型の不一致が生じていないので、明らかに問題ではありません。 –

答えて

5

ORDERは、ORDER BYのように予約語です。あなたは角かっこで囲む必要があります。

strSQL = "SELECT * FROM ORDER_DATA WHERE [ORDER]=" & curOrder 
+0

ありがとう!それはありがとうございました! – Shubham

関連する問題