读书人

字符转换有关问题帮忙看下

发布时间: 2012-05-20 16:03:12 作者: rapoo

字符转换问题,帮忙看下
我用这个语句向数据库中插入数据:在数据库中查出来显示为null。



string sql = "insert into test(number,subject,sources) values(@number,@subject,@sources)";
MySqlCommand cmd = new MySqlCommand(sql,conn);
MySqlParameter prm1 = new MySqlParameter("@number",this.NumbertextBox1.Text);
cmd.Parameters.Add(prm1); ------在数据库中 number字段为int(11)

MySqlParameter parm2 = new MySqlParameter("@subject",this.subjecttextBox2.Text);
cmd.Parameters.Add(parm2);------- subject char(20)

MySqlParameter parm3 = new MySqlParameter("@sources",this.SourcestextBox3.Text);
cmd.Parameters.Add(parm3);------sources int(11)

cmd.Connection.Open();
int array = cmd.ExecuteNonQuery();
if (array > 0)
{
MessageBox.Show("数据插入成功");
}
else
{
MessageBox.Show("数据插入失败");
}


我用convert.toint32(cmd.parameters.add(parm1).value);这个方法转换,插进去的数据显示的还是NULL,有什么方法转换的?


[解决办法]
mysql参数名不用@number这种形式,而是用?number。

也就是说参数名前是?而不是@。所以你参数名写错了。

读书人网 >C#

热点推荐