永发信息网

求解c#中:至少一个参数没有被指定值。是不是Insert插入语句的错误啊,非常谢谢 啊

答案:4  悬赏:10  手机版
解决时间 2021-03-08 04:01
  • 提问者网友:精神病院里
  • 2021-03-07 21:04
string mypath = Application.StartupPath + "\\mydata.accdb"; //连接数据库的路径及数据库名
string constr = "Provider = Microsoft.ACE.OLEDB.12.0; Data Source =" + mypath; //生成连接数据库字符串
OleDbConnection mycon = new OleDbConnection(constr); //定义OleDbConnection对象实例并连接数据库
mycon.Open();
//Insert插入语句
string myinsert = "insert into person(用户名,车牌号,地址) values ( '" + textBox1.Text.ToString () + "','" + textBox2.Text.ToString () + "'," + textBox3.Text.ToString () + ")";

OleDbCommand mycom = new OleDbCommand(myinsert, mycon); //定义OleDbCommnad对象并连接数据库
mycom.ExecuteNonQuery(); //执行插入语句
mycon.Close(); //关闭对象并释放所占内存空间
mycon.Dispose();
MessageBox.Show("已成功向数据库表中插入一条记录!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
name = textBox1.Text;
number = textBox2.Text;
address = textBox3.Text;
最佳答案
  • 五星知识达人网友:神也偏爱
  • 2021-03-07 22:20
你的地址字段应该是文本吧,后面的值没有用单引号括起来
Insert插入语句应为:
string myinsert = "insert into person(用户名,车牌号,地址) values ( '" + textBox1.Text.ToString () + "','" + textBox2.Text.ToString () + "','" + textBox3.Text.ToString () + "')";
全部回答
  • 1楼网友:酒者煙囻
  • 2021-03-08 01:14
注意一下类型,你确定车牌号是不是数字 在Access中数字的参数不要加单引号的。。。 比如string myinsert = "insert into person(用户名,车牌号,地址) values ( '" + textBox1.Text.ToString () + "'," + textBox2.Text.ToString () + ",‘" + textBox3.Text.ToString () + "’)"; 而文本是要加单引号的
  • 2楼网友:往事埋风中
  • 2021-03-08 01:00
sql 语句中的" + textBox3.Text.ToString () + "少了一对单引号啊,改成'" + textBox3.Text.ToString () + "' 地址肯定是字符串。。。。。
  • 3楼网友:风格不统一
  • 2021-03-07 23:50
你的地址字段应该是文本吧,后面的值没有用单引号括起来insert插入语句应为:stringmyinsert=insertintoperson(用户名,车牌号,地址)values('+textbox1.text.tostring()+','+textbox2.text.tostring()+','+textbox3.text.tostring()+');
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯