![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
皆様、いつも御世話になっております。
OS : Windows 2003 Server
開発環境 : VB6.0 + Oracle9.2
ライブラリ : Microsoft DAO 3.6 Object Library
DAOでODBC経由でOracleに接続し、
(接続文字列 DSN=XXXX;UID=XXXX;PWD=XXXX)
ヒント句の部分がエラーになって困っております。
発行SQL文----------------------------------------------------
SELECT /*+ index( テーブル名 インデックス名) */ *
FROM テーブル名
WHERE 各種条件
ORDER BY 順序指定
-------------------------------------------------------------
発行したSQL文をコピーし、SQLPLUSで動作させた所、意図したとおりに動作しており、SQLの記述が間違っている訳ではないようです。
VBからのOracle読み込みでは、他の書き方があるのでしょか?
どなたか、ご教授お願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
ヒント句の記載がORACLE特有のSQLであるため、ODBC経由ではうまく処理できないのではないかと思います。
ODBCにSQL文の処理をさせず直接Oracle側にSQLを投げる方法としてパススルークエリという方法があります。
なのでパススルークエリを使えばうまくいくかもしれません。
コーディングは得意でないので怪しいサンプルですが、下記のような感じでどうでしょう?
(実行環境がないので試せていません。)
===
Dim dDB As Database
Dim sSQL As String
Dim rRS As Recordset
Dim ConnectStr As String
ConnectStr= "ODBC;DSN=XXX;UID=XXX;PWD=XXX;"
sSQL = "SELECT /*+ index( テーブル名 インデックス名) */ * FROM テーブル名 WHERE 各種条件 ORDER BY 順序指定"
Set dDB = OpenDatabase("", False, False, ConnectStr)
Set rRS = dDB.OpenRecordset(sSQL, dbOpenSnapshot, dbSQLPassThrough)
・・・
===
もし、動作しないようであれば、パススルークエリについて調べて動くように修正してみてください。
===
Your DBA MOTO:TAKER
参考URL:http://www.accessclub.jp/dao/OpenRecordset.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- MySQL PhpMyAdminで作成して実行せよ。 東京23区を、皇居を中心とした4つのエリア(南東, 南西, 1 2023/06/11 11:58
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- Excel(エクセル) EXCELの「接続」のSQLのコマンド文字列にて、セルから任意の数値を利用したい 2 2023/03/09 16:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
truncate tableを使って複数の...
-
エラーを起こす方法
-
既にテーブルが存在する場合の...
-
テーブルに変更があったらCSV出力
-
ora-01722のエラーについて
-
複数レコードの複数フィールド...
-
フィールド数が異なるテーブル...
-
オラクルのUPDATEで複数テーブル
-
テーブル定義書(Oracle) 【IX】...
-
oracle ora-02298
-
AccessからOracle DB(View)を...
-
imp コマンドに関して
-
複数テーブルへの問合せ
-
Access97からOracle8iへのパス...
-
データ削除とSQL*Loaderでのイ...
-
VB6.0 DAO ORACLE ヒント使用方...
-
【SQL】他テーブルに含まれる値...
-
joinの場合のテーブル名の別名...
-
フラグをたてるってどういうこ...
-
SELECT INTOで一度に複数の変数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
truncate tableを使って複数の...
-
オラクルのUPDATEで複数テーブル
-
エラーを起こす方法
-
データ削除とSQL*Loaderでのイ...
-
テーブル定義書(Oracle) 【IX】...
-
既にテーブルが存在する場合の...
-
複数レコードの複数フィールド...
-
CASEでBETWEEN制約
-
[materialized]マテリアライズ...
-
Where句のNot条件をAnd条件にし...
-
AccessからOracle DB(View)を...
-
任意のテーブルをdrop tableしたい
-
accessのデータをoracleへinser...
-
複数テーブルへの問合せ
-
pro*cobol ⇔ oracle のデータ型...
-
テーブルに変更があったらCSV出力
-
SELECT実行結果のレスポンス改...
-
AccessVBAにて動的にテーブルを...
-
ストアドにしたらエラーになる
-
ora-01722のエラーについて
おすすめ情報