![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
Access2000のMDBをADOで読み込もうとしていますが、WHERE句を指定すると例外が発生します。
strSQL = "SELECT * FROM Q住所録 ORDER BY [カナ]";
strWhere = "([カナ] Like \'ア*\')";
strSQL += " WHERE " + strWhere;
ウォッチウィンドウでstrSQLを確認すると
{"SELECT * FROM Q住所録 ORDER BY [カナ] WHERE ([カナ] Like 'ア*')"}
とちゃんとなっていますが、
varTName = _T(strSQL);
hr = pRs.CreateInstance( __uuidof( Recordset));
pRs->Open( varTName, _variant_t((IDispatch *)pdb), adOpenDynamic, adLockReadOnly, dCmdUnknown);
でオープンすると例外が出ます。
エラーの内容は
IDispatch error #3092
となっています。
WHRERE句をしていなければ全レコードがちゃんと表示されます。
WHERE句は使えないんでしょうか。
Filterプロパティの使い方もよくわかりません。
レコードの抽出の方法を教えてください。
No.3
- 回答日時:
こんにちは。
>>同じ内容でAccessのクエリーからSQLビューでSQL文を書くとちゃんと抽出されます。
SQLの問題じゃないのかなぁ・・・。
とりあえずSQL載せてください。
後はテーブルの詳細(カラムの型とか、入ってるデータとか)がわかれば嬉しいです・・・。
(^^ゞ
この回答への補足
度々ありがとうございます。
テーブル(クエリー)の内容は、
名前 テキスト型 (漢字で入っています)
カナ テキスト型 (半角カナで入っています)
・・省略・・
生年月日 日付型
グループ 数値(バイト)型
となっています。
SQL文の内容は
"SELECT * FROM Q住所録 WHERE ( (グループ = 1) ) ORDER BY カナ"
だとうまくいくのですが、
"SELECT * FROM Q住所録 WHERE ((カナ Like 'ア*') ) ORDER BY カナ"
だと何も表示されません。
テーブルには
あいうえお アイウエオ ・・・ 2
ももももも モモモモモ ・・・ 1
といったデータが入っています。
カナはwebの関係上全角表示されていますが、実際にはテーブルの中身WHERE句も半角カナです。
WHERE条件でグループを1と指定した場合、
ももももも
が表示され、カナをア*と指定すると、レコードセットオープン後のEOFがTRUEとなっています。
よろしくお願いします。
No.1
- 回答日時:
WHERE句はORDER BYの前に書かないと駄目なような。
んなもんで、ORDER BYの前にWHERE句を書いてみてください。
ようは
{"SELECT * FROM Q住所録 WHERE ([カナ] Like 'ア*') ORDER BY [カナ]"}
こんな感じにすると良いのでは・・・。
そうでした。ありがとうございます。
後指摘通りなおすと、エラーはなくなったんですが、レコードが1件も表示されません。
同じ内容でAccessのクエリーからSQLビューでSQL文を書くとちゃんと抽出されます。
どこがいけないのでしょうか。
ちなみに、別の数値型フィールドをWhere条件で抽出するとちゃんと出ます。
Like式がいけないのでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- MySQL PhpMyAdminで作成して実行せよ。 東京23区を、皇居を中心とした4つのエリア(南東, 南西, 1 2023/06/11 11:58
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL SQL任意に並び替えをしたい 2 2023/08/28 10:47
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「名前(first name) 1 2023/06/24 13:03
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- Visual Basic(VBA) SQLで抽出 4 2022/12/04 13:55
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
google formsを使ったタスク依...
-
ホームページ作成時のレイアウ...
-
リストビューの項目の内容を変...
-
php mysql で WHERE句内に変数...
-
COBOLについて
-
DataViewで複数条件の...
-
外部参照してるキーを主キーに...
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
Access:クエリーにて集計後に...
-
Oracleのデータ型、NUMBERについて
-
カーソル0件の時にエラーを発生...
-
英語ができる方、問題をお願い...
-
EXISTSを使ったDELETE文
-
エクセルで最後の文字だけ置き...
-
datファイルとidxファイルで
-
access2003 クエリSQL文に...
-
列のヘッダーを含めるのをデフ...
-
エクセルVBAでEdate関数は使え...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
リストビューの項目の内容を変...
-
COBOLについて
-
バッチでcsvファイルの指定のカ...
-
php mysql で WHERE句内に変数...
-
DataViewで複数条件の...
-
COBOL プログラミング
-
Zend_DBを使ったselectで文字が...
-
DataGridView 右詰め
-
fgetcsvでCSVを取得した際のnul...
-
初心者)DataGridViewの入力桁...
-
ListView
-
google formsを使ったタスク依...
-
FormulaR1C1でSUMIF変数指定
-
javaの文字列で特定の文字列置換
-
前回ご教授いただいたコードに...
-
Sheet3から2つの条件でオートフ...
-
PHPでDBからデータを抽出してHT...
-
データ一部分の合計を求めたい
-
ListViewのカラムの色の変更
おすすめ情報