0

データベースに接続して特定のデータのサブセットを返すためのVB6コードに取り組んでいます。必要な情報はすべて1つのテーブルにありますが、別のクエリの結果に基づいて結果を選択するための正しいアプローチを確立するのに少し問題があります。

以下は、そこでクエリを作成したときにAccessによって生成されたSQLですが、VB6アプリケーションで使用するためにそれらを変換しようとしています。

'*編集 -

" & Chr(34) & lstAb.Text & Chr(34) & "

上記のDavidのおかげで、このコードは正しい方向に導かれました。そこから、デバッグウィンドウを使用して、Accessでの選択を確認しました。これは、本当に素晴らしい経験でした。エイリアスを少し調整する必要がありましたが、Accessが、すでに宣言されているはずの他の値を入力するように要求したときに、すべてが非常に明白になりました。

デビッドにもう一度感謝します!

4

2 に答える 2

1

サブクエリを指定するよりも、2つのテーブル間で適切な結合を行う方がはるかに良い場合があります。しかし、それは問題ではないと思います。

コードを見ると、基準の前後に引用符がいくつか欠落していると思います。あなたは言う:

"...clone_id = " & lstAb.Text & ") ORDER..."

これはおそらく次のようになります。

"...clone_id = " & Chr(34) & lstAb.Text & Chr(34) & ") ORDER..."

で見つかったテキストを引用符で囲みますlstAb.Text

これらの種類の関数をテストする簡単な方法はDebug.Print(sSql)Debugウィンドウを見て、SQLがどのように見えるかを確認することです。そのSQLのコピーを取り、MSAccessの新しいクエリにドロップして(クエリに「SQLの表示」を指示できます)、どこで問題が発生しているかを調べます。

これにより、クエリデザイナを表示できるため、クエリにネストされたクエリが含まれていないかどうかを簡単に確認できます。

于 2013-03-21T19:56:57.580 に答える
0

を指定しますDetails.func_ID) Like "Simp_*"Simp_データサンプルには、文字列を含むレコードはありません

于 2013-03-21T18:41:28.950 に答える