2013-03-14 71 views
0

好了,所以我試圖連接到我的大學的數據庫服務器,並允許我的程序的用戶提交,然後將被存儲在一個數據庫中的高分。我遇到的問題是,數據不會被添加到數據庫中,但不會收到任何錯誤或消息,說它沒有。從Windows窗體添加int和字符串到MySQL

這是按鈕

private void btnSubmitScore_Click(object sender, EventArgs e) 
{ 
    string connStr = "server=server; " + 
        "database=databse; " + 
        "uid=username; " + 
        "pwd=password;"; 

    string query = "INSERT INTO highscore('Name','Score') VALUES (@Name, @Score);"; 
    using(MySqlConnection connection = new MySqlConnection(connStr)) 
    { 
     Console.WriteLine(query); 
     MySqlCommand insertCommand = new MySqlCommand(query,connection); 
     insertCommand.Parameters.AddWithValue("@Name",sName); 
     insertCommand.Parameters.AddWithValue("@Score",iTotalScore); 

     try 
     { 
      connection.Open(); 
      insertCommand.ExecuteNonQuery(); 
     } 
     catch (Exception ex) 
     { 
      Console.WriteLine("exception: " + ex); 
     } 
     connection.Close(); 
    } 
} 

我的變量是SNAME和iTotalScore將被添加到兩個字段稱爲「名稱」,並在DATABSE「分數」的代碼。我在網上查找,但似乎無法找到解決方案。

如果有人可以幫助我們將不勝感激。

很多謝謝

+1

什麼'的ExecuteNonQuery()'的返回值?它會爲你提供受你的語句影響的行數,它應該是1.仔細檢查一下。 – Arran 2013-03-14 17:19:44

+0

對不起,但我沒有線索如何做到這一點:/ – 2013-03-14 17:20:36

+0

var result = insertCommand.ExecuteNonQuery(); – Corylulu 2013-03-14 17:21:06

回答

0

您的INSERT語句有問題。您不能在任何引用中放置列名稱。你的說法應該是:

查詢字符串= 「INSERT INTO高分(姓名,分數)VALUES(@Name,@Score)」;