是否可以监视和记录针对 Access MDB 的实际查询? [英] Is it possible to monitor and log actual queries made against an Access MDB?

查看:36
本文介绍了是否可以监视和记录针对 Access MDB 的实际查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以像对 SQL Server 使用 SQL Profiler 一样监控 Access MDB 发生的情况(即正在对其执行哪些 SQL 查询)?

Is it possible to monitor what is happening to an Access MDB (ie. what SQL queries are being executed against it), in the same way as you would use SQL Profiler for the SQL Server?

我需要调用实际查询的日志.

I need logs of actual queries being called.

推荐答案

答案取决于使用 MDB 的客户端所使用的技术.您可以在 HKEY_LOCAL_MACHINESoftwareMicrosoftJet4.0EnginesODBC http://office.microsoft.com/en-us/access/HP010321641033.aspx.如果您使用 OLEDB 从 SQL Server 访问 MDB,您可以使用 DBCC TRACEON(请参阅 http://msdn.microsoft.com/en-us/library/ms187329.aspx).我可以继续,但首先你应该明确定义你使用哪个接口来访问 MDB.

The answer depend on the technology used from the client which use MDB. There are different tracing settings which you can configure in HKEY_LOCAL_MACHINESoftwareMicrosoftJet4.0EnginesODBC http://office.microsoft.com/en-us/access/HP010321641033.aspx. If you use OLEDB to access MDB from SQL Server you can use DBCC TRACEON (see http://msdn.microsoft.com/en-us/library/ms187329.aspx). I can continue, but before all you should exactly define which interface you use to access MDB.

MDB 是一个没有任何活动组件的文件,因此跟踪可以不是 MDB 本身,而是 DB 接口.

MDB is a file without any active components, so the tracing can makes not MDB itself, but the DB interface only.

更新:因为使用来自 VB 的 DAO(Jet 引擎)和 OLE DB,我建议您在 HKEY_LOCAL_MACHINESOFTWAREMICROSOFTJET4.0Engines 下创建值为ON"的 JETSHOWPLAN 注册表项Debug (您必须创建调试子项).例如在 https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-5064388.htmlhttp://msdn.microsoft.com/en-us/library/aa188211%28office.10%29.aspx 对应于 http://support.microsoft.com/kb/252883/en 允许跟踪 OLE DB 查询.如果此输出对您来说还不够,您还可以使用 HKEY_LOCAL_MACHINESoftwareMicrosoftJet4.0EnginesODBC 中的 TraceSQLMode 和 TraceODBCAPI.在我的实践中,JETSHOWPLAN 为我提供了完美的信息.另见 SHOWPLAN 推荐.

UPDATED: Because use use DAO (Jet Engine) and OLE DB from VB I recommend you create JETSHOWPLAN regisry key with the "ON" value under HKEY_LOCAL_MACHINESOFTWAREMICROSOFTJET4.0EnginesDebug (Debug subkey you have to create). This key described for example in https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-5064388.html, http://msdn.microsoft.com/en-us/library/aa188211%28office.10%29.aspx and corresponds to http://support.microsoft.com/kb/252883/en allow trace OLE DB queries. If this output will be not enough for you you can additionally use TraceSQLMode and TraceODBCAPI from HKEY_LOCAL_MACHINESoftwareMicrosoftJet4.0EnginesODBC. In my practice JETSHOWPLAN gives perfect information for me. See also SHOWPLAN commend.

UPDATED 2:对于更新版本的 Access(如 Access 2007),请使用 HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice12.0Access Connectivity EngineEngines 之类的密钥.工具 ShowplanCapturer(参见 http://www.mosstools.de/index.php?option=com_content&view=article&id=54&Item%20%20id=57,下载http://www.mosstools.de/download/showplan_v9.zip 也是英文)也对您有所帮助.

UPDATED 2: For more recent version of Access (like Access 2007) use key like HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice12.0Access Connectivity EngineEngines. The tool ShowplanCapturer (see http://www.mosstools.de/index.php?option=com_content&view=article&id=54&Item%20%20id=57, to download http://www.mosstools.de/download/showplan_v9.zip also in english) can be also helpful for you.

这篇关于是否可以监视和记录针对 Access MDB 的实际查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆