我在 C# 中有一个如下所示的方法,我要参数化我的查询,但名称字段在数据库 .testTable(id,name) 中获取空值,并且 id 是自动递增的。mysql 版本是 5.6
private void buttonTest_Click(object sender, EventArgs e)
{
string query = "insert into testdb.testTable(name) VALUES (@name) ;";
MySqlConnection conDataBase = new MySqlConnection(myfunctions.ConnString);
conDataBase.Open();
MySqlCommand cmd = new MySqlCommand(query, conDataBase);
try
{
cmd.Connection = conDataBase;
cmd.Parameters.AddWithValue("@name","John");
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{ MessageBox.Show(ex.Message); }
}
最佳答案
尝试用这个代替 varchar,50 输入你的数据库类型
string query = "insert into testdb.testTable(name) VALUES(_name) ;";
和
cmd.Connection = conDataBase;
cmd.Parameters.Add("_name", MySqlDbType.VarChar, 50).Value = "John";
cmd.ExecuteNonQuery();
关于c# - mysql参数通过c#设置为null到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20852108/