Wednesday, April 22, 2009

Reuse Oracle Parameters

之前在寫程式的時候就遇過的問題,只是那時候比較懶,所以用了很懶惰又醜陋的方法帶過了。

like this:
string sql1, sql2; //這兩個sql都需要一個:pid的參數
宣告一個OracleParameter param = new OracleParameter("pid", id);
//分別宣告兩個command來執行sql
cmd1.parameters.Add(param);
cmd1.executeNonQuery(); //第一次OK
cmd2.parameters.Add(param); //第二個SQL需要一樣的參數,所以直接拿來用
cmd2.executeNonQuery();
//!! 被抱怨: OracleParameter object is already contained in a collection之類的

就是這樣。
解法其實很簡單,在cmd1執行完之後,把parameters清掉就可以了。

Ref: from OTN

Comments

0 Responses to "Reuse Oracle Parameters"

Post a Comment

Tags