C# 从Windows窗体向mySQL中添加int和string
好的,我正在尝试连接到我的大学数据库服务器,并允许我的程序的用户提交高分,然后将其存储在数据库中。我遇到的问题是,数据没有被添加到数据库中,但是没有收到任何错误或消息来表示它没有 这是按钮的代码C# 从Windows窗体向mySQL中添加int和string,c#,mysql,windows,winforms,C#,Mysql,Windows,Winforms,好的,我正在尝试连接到我的大学数据库服务器,并允许我的程序的用户提交高分,然后将其存储在数据库中。我遇到的问题是,数据没有被添加到数据库中,但是没有收到任何错误或消息来表示它没有 这是按钮的代码 private void btnSubmitScore_Click(object sender, EventArgs e) { string connStr = "server=server; " + "database=databse; " +
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,它们将被添加到数据库中名为“Name”和“Score”的两个字段中。我在网上查过,但似乎找不到解决办法
如果有人能帮忙,我们将不胜感激
非常感谢您的INSERT语句中有错误。不能将列名放在任何引号中。你的陈述应该是:
string query=“插入到highscore(Name,Score)值(@Name,@Score);”
ExecuteNonQuery()
的返回值是多少?它将给出受语句影响的行数,希望为1。仔细检查一下。对不起,arran,但我不知道该怎么做:/var result=insertCommand.ExecuteNonQuery()@米凯克。我想说的是,即使在使用块中,您仍然应该关闭连接。我认为这是一种更好的做法。我认为您不需要在列名中使用引号,请尝试在查询字符串中插入(名称、分数)值。。。