4

我正在使用使用 ODBC 连接和更改数据库的第三方应用程序。在某些故障模式下,最终结果不是我所期望的。为了更好地理解它,我想要某种方式来检查发送到数据库的所有语句。有没有办法用 ODBC 做到这一点?

我知道使用 JDBC 我可以使用http://www.p6spy.com/查看发送的所有语句,例如在调试休眠时。p6spy 是一个“代理”驱动程序,它记录发送的命令并将它们转发到真正的 JDBC 驱动程序。

另一种可能性可能是通过网络捕获语句的协议嗅探器。虽然,我不确定 ODBC 是否包含标准有线协议,或者仅指定 API。

有谁知道可以让我做这些事情的现有工具?或者,我可以采取另一种方法吗?

4

3 回答 3

1

ODBC 指定您的程序如何与本地驱动程序通信,而不是本地驱动程序如何与远程数据库通信。您的代理驱动程序的想法是合理的,您只需要找到一个。

于 2010-04-20T02:41:13.423 回答
1

您是否尝试过 ODBC 中内置的跟踪功能?在 ODBC 数据源管理器中,有一个跟踪选项卡。我记得,捕获的信息非常冗长。

于 2010-04-20T15:29:36.317 回答
0

我认为无论数据库是什么,在 SQL 端读取日志都更容易。例如,打开 SQL Server 上的监视器或查看 MySQL 中的日志。使用嗅探器似乎比它的价值更麻烦,但我想这取决于可用的工具。您使用的是什么 RDBMS?

于 2010-04-20T02:37:53.137 回答