web-dev-qa-db-ja.com

Trace ODBCコマンド:TraceSQLModeのレジストリパスとは何ですか?SQLOUT.TXTはどこにありますか?

Microsoft Office Accessの最適化 のドキュメントでは、次のことができると記載されています。

... Microsoft Windowsレジストリ設定を編集して、Office AccessデータベースエンジンがODBCに送信するコマンドを表示できるようにします。

さらに、これを行う方法についての詳細な手順を示します。

JetデータベースエンジンからのすべてのODBCコマンドのトレースを有効にするには:

  1. Windowsの[スタート]メニューから[ファイル名を指定して実行]を選択します。
  2. Regeditと入力して、レジストリエディターを開きます。
  3. Office Access 2007より前のバージョンのOffice Accessを使用している場合は、レジストリエディターにフォルダーとして表示される次のレジストリキーに移動します。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\ODBC

Office Access 2007は、Office Access Connectivity Engine(ACE)という名前のJetデータベースエンジンのカスタマイズされたバージョンを使用します。これは、他のWindowsアプリケーションと共有されません。 Office Access 2007を使用している場合は、次のレジストリキーに移動します。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Access Connectivity Engine\ODBC

  1. TraceSQLMode設定をダブルクリックし、値を0から1に変更して、[OK]をクリックします。
  2. この変更を行うときにOffice Accessが開いている場合は、変更を有効にするためにOffice Accessを閉じて再度開く必要があります。

レジストリにこの変更を加えた後、ODBCデータソースに送信されたクエリは、Sqlout.txtという名前のテキストファイルに記録されます。


ただし、おそらくおわかりのように、このドキュメントはかなり古いものです(Access 2007について記述され、2006年に公開されました)。古いため、レジストリ情報はOffice 2016などの新しい製品では古くなっているようです。

また、Access 2016ではJet Engineを使用していないように見えますが、代わりにAccess Connectivity Engineを使用しています。

そのため、いくつかのことを見つけるのに問題があります:

  1. Access 2016のAccess Connectivity Engine >>> TraceSQLModeレジストリキーはどこにありますか?
  2. また、sqlout.txtファイルはどこに保存されますか?
1
Wilson
  1. このページ のコメントからパスを掘り出すことができました。私のマシンのAccess 2016では、TraceSQLModeレジストリキーは次の場所にあります。

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\16.0\Access Connectivity Engine\Engines\ODBC\TraceSQLMode

  2. このページsqlout.txtファイルはDefault database folderに示されているようにMS Access Tools-> Options-> General-> Default database folder。私の場合、それはここにあります:

    C:\Users\[my user name]\Documents\sqlout.txt

0
Wilson