c#注册表单mysql插入

时间:2013-05-20 09:33:51

标签: c# mysql insert

所以我有问题将一些数据输入到数据库中..我真的卡住了,我对c#很新,并且尚未学习所有关键词,我没有得到任何错误,只是没有任何东西添加到我的数据库。

        textBox2.Text = myPWD;
        MySqlConnection conn = new MySqlConnection("test")

        string Query = "INSERT INTO `users`.`coffekeys` (`koffekeys`) VALUES ('values = @val')";
        MySqlCommand data = new MySqlCommand(Query, conn);
        MySqlDataReader myReader;

            conn.Open();
            SelectCommand.Parameters.AddWithValue("@val", this.textBox2.Text);
            conn.Closed()

2 个答案:

答案 0 :(得分:2)

在传递参数时操纵值的串联。不要在sql语句中这样做。

string Query = "INSERT INTO `users`.`coffekeys` (`koffekeys`) VALUES (@val)";
// other codes
SelectCommand.Parameters.AddWithValue("@val", "values = " + this.textBox2.Text);

参数不起作用的原因是因为它被单引号包围。参数是标识符,而不是字符串文字。

下一个问题是你没有调用将执行命令的ExecuteNonQuery()

在关闭连接之前,请致电ExecuteNonQuery()

// other codes
data.ExecuteNonQuery();
conn.Close();

答案 1 :(得分:1)

你应该谷歌,你会收到很多内容 您需要运行ExecuteNonQuery

SqlConnection con = new SqlConnection(constring);
con.Open();

SqlCommand cmd = new SqlCommand(
    "insert into st (ID,Name) values ('11','seed');", con);

cmd.ExecuteNonQuery();
cmd.Close();