把这一句写到try块中。
另外这句改成
int res=cmd.ExecuteNonQuery()
if(res>0)
{
MessageBox.Show("成功")
}
有时候res为0,也表示什么数据都没插进去,但是因为sql没错,所以不会报错。你试试。
另外,你得先学会调试,才能自己解决问题。
给你看看我差如的方法,我用的是Text插入的,你就看中间插入那段;共同学习;private void button2_Click(object sender, EventArgs e)
{
string connectionString = "data source=.user id=sapwd=123database=XSBgood"
SqlConnection con = new SqlConnection()
///创建SqlConnection类的实例,用于连接SQL Server数据库
con.ConnectionString = connectionString
///设置插入数据库的SQL语句
string cmdText = "INSERT XueShengXX (Name,XueHao,XinBei,CSnianfeng,DianHua,DiZhi,ZhaoPian,XueLi,GuoJingYan,BeiZhu)VALUES('" + textBox1.Text + "','"
+ textBox2.Text + "','" + comboBox2.Text+ "','" +dateTimePicker1.Text+ "','"+textBox3.Text+"','"+textBox4.Text+"','"
+ZP_LJ.ToString()+"','"+comboBox1.Text+"','"+comboBox3.Text+"','"+textBox5.Text+"')"
SqlCommand cmd = new SqlCommand(cmdText, con)
try
{
con.Open() ///打开数据库
int fhz = cmd.ExecuteNonQuery() ///执行插入插入
}
catch (Exception ex) { MessageBox.Show(ex.Message)}
finally { con.Close()}
MessageBox.Show("保存成功")
}
唉 你这个sql语句拼接起来 是这样的.insert into login (company,loginname,password) values (临沧,张三,GvaNe1Vzm4Gdb2BXzaLAPHGMoLzsyxDt)
这样当然不行啦.你把这句话拿到数据库执行以下.肯定报错.如果不是用参数,而是拼接的.字符串类型的数据必要要打引号啊
insert into login (company,loginname,password) values ('临沧','张三','GvaNe1Vzm4Gdb2BXzaLAPHGMoLzsyxDt')
你把这句
string cmdtxt = "insert into login (company,loginname,password) values (" + this.comboBox1.Text + "," + this.textBox1.Text + "," + pw + ")"
改成
string cmdtxt = "insert into login (company,loginname,password) values ('" + this.comboBox1.Text + "','" + this.textBox1.Text + "','" + pw + "')"
在试试
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)