2017-08-03 75 views
0

這是示例:C#:SQL更新命令不再起作用

沒有錯誤,它的工作完美之前。

////////////////////////////////////////////// ///////////////////////

public bool updateData() 
    { 
     try 
     { 
      connection.Open(); 

      string sqlQuery = "UPDATE Other SET count = '1'"; 

      cmd.CommandText = sqlQuery; 

      cmd.ExecuteNonQuery(); 
      cmd.Clone(); 

      return true; 
     } 
     catch 
     { 
      // 
     } 
     finally 
     { 
      connection.Close(); 
     } 

     return false; 
    } 
+4

沒有錯誤,也許是因爲你沒有在'catch'塊中放置任何異常處理代碼? – GurV

+5

**永遠不要寫一個空的「catch」塊**!永遠。你永遠不會知道是否和爲什麼失敗。此外,這是「ExecuteNonQuery」的結果,您從不檢查並返回受影響記錄的數量。這些都是你最好的2個猜測和我的意思的猜測,因爲沒有辦法對任何人知道你提供的信息有限。如果您需要更多幫助,請創建[mcve]。 – Igor

+0

它不會進入catch塊! –

回答

0

解決方案:

我有2個連接字符串,一個是數據庫在我的電腦中的位置,另一個是在客戶端PC中使用。

我已經使用了錯誤的連接字符串,所以,當我使用的是指數據庫的位置連接字符串在我的電腦..它的作品!

謝謝大家,

0

試試這個:

public bool updateData(){ 
      _conn.ConnectionString = conn; 
      string comando = ""; 
      try{ 
       _conn.Open(); 
       comando = "UPDATE Other SET count = 1"; 
       //YOUR DB CLIENT COMES HERE 
       MySqlCommand cmd = new MySqlCommand(comando, _conn); 
       cmd.ExecuteNonQuery(); 
       _conn.Close(); 
       return true; 
      } 
      catch (Exception ex){ 
       ex.Message.ToString(); 
       _conn.Close(); 
      } 
      return false; 

}