5

Access 2010 で ODBC データベース テーブルに対して動的追加クエリを実行する方法を見つけようとしています (質問 12592953参照) 。しかし、Access 2010 / accdb データベースは明らかに Jet エンジンを使用していないため、これは役に立ちません。

更新:これは、私が機能させようとしているクエリです (完全な説明は、上記にリンクされている他のスタックオーバーフローの質問にあります)。テーブルのローカル コピーをリモート コピーからの新しい行で更新することになっています。しかし、何が起こるかというと、Access がリモート テーブル全体 (これは巨大で、ODBC がタイムアウトする原因になります) をプルし、WHEREローカルで実行します。

INSERT INTO local (dt, latitude, longitude)
SELECT dt, latitude, longitude
FROM remote_odbc, (SELECT max(dt) AS max_dt FROM local) AS sub
WHERE remote_odbc.dt > max_dt;

Access 2010 の Jet / Debug / showplan レジストリ ハックに似たもので、Access がクエリを表示する方法に関する詳細情報を取得できますか?

4

2 に答える 2

5

ありがとう@Fionnuala

Access 2010 32 ビットの場合、次のキーが必要です。

Windows 7 32 ビットの場合:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Debug]
"JETSHOWPLAN"="ON"

または Windows 7 64 ビットの場合:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Debug]
"JETSHOWPLAN"="ON"

Debugキーを入れるフォルダを作成する必要がありました。

于 2015-02-06T16:16:02.350 に答える
2

次のキーが必要です。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Debug]
"JETSHOWPLAN"="ON"

上記は、Access 2010 を実行している Windows 7 レジストリからエクスポートされ、showplan.out が生成されます。

于 2012-09-28T11:38:10.020 に答える