2010-11-02 71 views
0

我在想什麼。可以說我有這段代碼:聲明MySql命令

if (cbBackup.Checked) 
{ 
    log("Making backup, this might take a while.."); 

    SqlCommand comm = new SqlCommand(GetFromResources("databaseInstaller.qry.backup.sql"), conn); 
} 

SqlCommand comm = new SqlCommand(GetFromResources("databaseInstaller.qry.anotherfile.sql"), conn); 

這個問題是,我不能再次通信,因爲它已經被製成。但是,如果未檢查cbBackup,代碼可能無法到達該部分。

即使程序沒有超過IF函數,我是否可以重新聲明comm的值? - 或者我應該只做另一個SqlCommand?

任何其他建議是值得歡迎的,當然。

編輯:這不是一個if-else的問題。其中一個總是執行,另一個只在檢查cbBackup時執行。

回答

1
SqlCommand comm; 
if (cbBackup.Checked) 
{ 
    log("Making backup, this might take a while.."); 

    comm = new SqlCommand(GetFromResources("databaseInstaller.qry.osrose_backup.sql"), conn); 
} 

comm = new SqlCommand(GetFromResources("databaseInstaller.qry.anotherfile.sql"), conn); 
+0

謝謝你,但它不是的if-else的問題。其中一個總是執行,另一個只在檢查cbBackup時執行。編輯:謝謝,那就是我一直在尋找的。 – Nick 2010-11-02 13:12:51

+0

@Nick - 刪除了其他。 – 2010-11-02 13:14:52

+0

好的,謝謝,這個作品。 – Nick 2010-11-02 13:15:56

0
SqlCommand comm; 
if (cbBackup.Checked) 
{ 
    log("Making backup, this might take a while.."); 

    comm = new SqlCommand(GetFromResources("databaseInstaller.qry.osrose_backup.sql"), conn); 
} 
else 
{ 
    comm = new SqlCommand(GetFromResources("databaseInstaller.qry.anotherfile.sql"), conn); 
}