insert 语法错误
OleDbCommand Cm2 = new OleDbCommand("INSERT INTO people (pid,pname,pwd,sex,Tel,Email,add) VALUES ('"+ pid.Text +"','" + name.Text + "','" + pwd1.Text + "', '"RadioButton.Equals"','" + tel.Text + "','" + email.Text + "','" + add.Text + "')", con);高手帮我看看,这句话错在哪里了,谢谢了! --------------------编程问答-------------------- 可能是('"+ pid.Text +"','" + name.Text + "','" + pwd1.Text + "', '"RadioButton.Equals"','" + tel.Text + "','" + email.Text + "','" + add.Text + "') 的错误,最好不要用这种方式用下面的:
string sqlTxt= pid.Text +","+name.Text +","+pwd1.Text +","+RadioButton.Equals+","+tel.Text+","+email.Text +","add.Text ;
OleDbCommand Cm2 = new OleDbCommand("INSERT INTO people (pid,pname,pwd,sex,Tel,Email,add) VALUES ("+sqlTxt+")", con);
--------------------编程问答-------------------- 把sql语句最好打印出来~这样看的方便~~ --------------------编程问答-------------------- ...看着郁闷,如果在前台用
SqlParameter pp=new SqlParameter("@a",SqlDbType.nvarchar)
pp.value=pid.text
cmd.Parameters.Add(pp);
这种形式吧 --------------------编程问答-------------------- 可以防恶意代码
--------------------编程问答-------------------- OleDbCommand Cm2 = new OleDbCommand("INSERT INTO people (pid,pname,pwd,sex,Tel,Email,add) VALUES ('"+ pid.Text +"','" + name.Text + "','" + pwd1.Text + "', '"RadioButton.Equals"','" + tel.Text + "','" + email.Text + "','" + add.Text + "')", con);
你这个 RadioButton.Equals 是个变量?还是个字符串。。 是变量的话 少2个+ 是字符串的话 多2个 "
--------------------编程问答-------------------- OleDbCommand Cm2 = new OleDbCommand("INSERT INTO people (pid,pname,pwd,sex,Tel,Email,add) VALUES ('"+ pid.Text +"','" + name.Text + "','" + pwd1.Text + "', '"RadioButton.Equals"','" + tel.Text + "','" + email.Text + "','" + add.Text + "')", con);
把+号全改&号试试,我现在做的那网站里面,用+号就出错,用就对了。 --------------------编程问答-------------------- '"RadioButton.Equals"','"
应该是这里吧,建立楼主先给于一个变量,再输出来看看,或跟踪调试下就知道 --------------------编程问答-------------------- '"RadioButton.Equals"'应该是这里错误 --------------------编程问答-------------------- 对,是那个RadioButton.Equals错了,该怎么改呢? 那是两个单独的单选按钮,想把选择的结果写进数据库。 --------------------编程问答-------------------- RadioButton1.Checked ? null: RadioButton1.Text --------------------编程问答-------------------- RadioButton.Equals有问题,看LZ是想用单选来判断选择的性别,为什么不用RadioButton.Checked判断,然后得到Text属性再加到SQL语句里去呢
--------------------编程问答-------------------- string sex="";
if (this.RadioButton1.Checked)
sex = this.RadioButton1.Text;
else
sex = this.RadioButton2.Text;
--------------------编程问答-------------------- 改成RadioButton.Checked 还有错误
提示:
System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。
标出 下一句 int i = Cm2.ExecuteNonQuery();出错了
--------------------编程问答-------------------- 如果你是access数据库的话,pwd是保留字,字段名称用[]号括起来 --------------------编程问答-------------------- 看一下是不字段类型的错误 --------------------编程问答-------------------- 數據庫設置是怎么樣的??? --------------------编程问答-------------------- 在RadioButton.text中兩邊加上加號
'"+RadioButton.Text+"'
------------------
OleDbCommand Cm2 = new OleDbCommand("INSERT INTO people (pid,pname,pwd,sex,Tel,Email,add) VALUES ('"+ pid.Text +"','" + name.Text + "','" + pwd1.Text + "', '"+RadioButton.Text+"','" + tel.Text + "','" + email.Text + "','" + add.Text + "')", con); --------------------编程问答-------------------- 这样有时容易写错,可以用string.Format来写
补充:.NET技术 , ASP.NET