我正在研究一個對程序執行任意腳本的.NET程序。重新使用ADO.NET命令對象是一個好主意嗎?
當運動課開始寫數據庫訪問代碼,他簡單地暴露一個命令對象,其被重新使用的應用程序的其餘部分(設置CommandText
/Type
,主叫ExecuteNonQuery()
等)爲每個語句。
我想這是一個重複的,相同的語句的重大性能打擊,因爲它們每次都被重新解析。
但是我想知道的是:如果每個語句都不同於前一個語句(不僅是不同的參數,而是完全不同的語句),這是否會降低執行速度?我無法在文檔中輕鬆找到答案。
順便說一下,使用的RDBMS是Oracle,但我想這個問題並不是特定於數據庫的。
P.S.我知道暴露相同的Command
對象不是線程安全的,但這不是一個問題。