2010-04-20 47 views
4

我正在使用第三方應用程序使用ODBC來連接和更改數據庫。在某些故障模式下,最終結果並非我所期望的。爲了更好地理解它,我想要一些檢查發送到數據庫的所有語句的方法。有沒有辦法用ODBC來做到這一點?我可以看到通過ODBC連接發送的所有SQL語句嗎?

我知道與JDBC我可以使用http://www.p6spy.com/看到發送的所有語句,例如調試休眠時。 p6spy是一個「代理」驅動程序,它記錄發送的命令並將它們轉發到真正的JDBC驅動程序。

另一種可能性可能是一個協議嗅探器能夠捕捉在電線聲明。雖然,我不確定ODBC是否包含標準有線協議,或者只是指定了API。

有誰知道現有的工具,可以讓我做任何的這些東西?或者,我可以採取另一種方法嗎?

回答

0

我認爲這是更容易閱讀SQL一邊的日誌,無論數據庫。例如,打開SQL Server上的監視器或查看MySQL中的日誌。看起來,使用嗅探器會比它的價值更麻煩,但我想這取決於可用的工具。你使用的是什麼RDBMS?

+0

我們正在使用DB2。我只對一次來自一臺機器的流量感興趣。它們通常也被它們編輯的模式隔離,所以可以使用單個模式中的日誌。 – 2010-04-20 04:58:51

+0

那麼,我已經使用DB2作爲程序員,但從來沒有DBA,所以我不能說任何具體的日誌。但這聽起來像一個體面的地方看。 – MJB 2010-04-20 10:54:42

1

ODBC指定您的程序如何與本地驅動程序進行通信,而不是本地驅動程序與遠程數據庫的通信方式。你的代理驅動程序的想法是健全的,你只需要找到一個。

1

您是否嘗試過內置到ODBC跟蹤?在ODBC數據源管理器中,有一個跟蹤選項卡。我記得,所捕獲的信息相當冗長。

相關問題