2009-07-10 107 views
3

我在做一個不斷選擇的每10秒,所以我想我會做一些過早optimsing和保存everyloop我可以重複使用C#的SqlParameter

創建一個cmd並paramater對象,如果我這樣做的一個方法

public void FirstSelect() { 

    // select data 
    this.cmdSelectData = new SqlCommand(SQL_SELECT_DATA, conn); 

    this.paramBranchId = new SqlParameter("@branch_id", 1); 
    this.cmdSelectData.Parameters.Add(paramBranchId); 

    // fetch data blah, blah, blah... 
} 

,然後在此另一種方法

public void SecondSelect() { 

    this.paramBranchId.Value = 2; 
    // fetch data 
} 

會如預期,一個選擇使用分支1的工作中,一個選擇使用分支2 或者我需要

this.cmdSelectData.Parameters.Clear(); 
ths.cmdSelectData.Parameters.Add(new SqlParameter(// for branch 2) 

}

+0

你打算完成這個問題嗎? – 2009-07-10 02:58:46

+0

對不起意外提交的帖子之前,我已經完成它 – bumperbox 2009-07-10 03:23:23

回答

5

是的,在現有參數上設置值會影響後續執行的命令。如果您想用一個或多個參數的不同值執行相同的命令幾次,而不必每次都重新構建整個事件,這非常方便。

1

你需要爲你添加每一個新的參數。

+0

看到馬特的更完整的答案(我在問題完成前回答!) – 2009-07-10 03:29:50

相關問題