问题描述
OleDbCommandcmd2=newOleDbCommand();cmd2.Connection=conn;cmd2.CommandText="insertintoDataBase(ID,UserName,Sex,Birthday,Education,Company,FirstKind,FirstLevel,FirstData,FirstNumber,SecoundKind,SecoundLevel,SecoundData,SecoundNumber,ThirdKind,ThirdLevel,ThirdData,ThirdNumber,Other1,Other2,Other3,Other4)values('"+txtID.Text+"','"+txtName.Text+"','"+txtSex.Text+"','"+txtBirthday.Text+"','"+txtEdution.Text+"','"+cmbCompany.Text+"','"+txtKind1.Text+"','"+cmbLevel1.Text+"','"+txtDate1.Text+"','"+txtNumber1.Text+"','"+txtKind2.Text+"','"+cmbLevel2.Text+"','"+txtDate2.Text+"','"+txtNumber2.Text+"','"+txtKind3.Text+"','"+cmbLevel3.Text+"','"+txtDate3.Text+"','"+txtNumber3.Text+"','"+txtOther1.Text+"','"+txtOther2.Text+"','"+txtOther3.Text+"','"+txtOther4.Text+"')";inttemp=cmd2.ExecuteNonQuery();if(temp>0){MessageBox.Show("员工技能鉴定信息添加成功!","提示",MessageBoxButtons.OKCancel);}else{MessageBox.Show("员工技能鉴定信息添加失败!","提示",MessageBoxButtons.OKCancel);}标红语句提示未处理的OledbException,INSERTINTO语句的语法错误,什么原因,百思不得其解啊,求大神
解决方案
解决方案二:
把生成的CommandText语句发出来
解决方案三:
你把cmd2.CommandText内容复制出来放到数据库里面执行一下,问题马上就看出来了...
解决方案四:
如果字段是字符串格式,值要被单引号引起来
解决方案五:
太长了,没人会给你仔细看这东西断点调试,把拼接好的SQL语句复制出来,扔数据库里一执行,就知道到底什么错误了,很简单的
解决方案六:
而且你以后会经常用到这个,早些学会自己调试吧不可能每次SQL语句一出问题,就上这里来问吧
解决方案七:
引用5楼Z65443344的回复:
而且你以后会经常用到这个,早些学会自己调试吧不可能每次SQL语句一出问题,就上这里来问吧
顶一个~
解决方案八:
还是数据库语句的问题,你把那段语句放到数据库调试一下试试。
解决方案九:
用SqlParameter传参数
解决方案十:
建一个sql跟踪,然后把语句贴出来
解决方案十一:
DataBase是个毛线啊?你数据库里有这个表么?先把Sql的基本语法弄清楚吧,你现在的问题不是“不知道问题出在哪里”,而是根本不懂Sql,根本没法沟通。
解决方案十二:
把你的程序调试一下,生成的sql放到数据库里执行一下,个人觉得你写的代码有点。。
解决方案十三:
引用楼主ganjibujin58518的回复:
OleDbCommandcmd2=newOleDbCommand();cmd2.Connection=conn;cmd2.CommandText="insertintoDataBase(ID,UserName,Sex,Birthday,Education,Company,FirstKind,FirstLevel,FirstData,FirstNumber,SecoundKind,SecoundLevel,SecoundData,SecoundNumber,ThirdKind,ThirdLevel,ThirdData,ThirdNumber,Other1,Other2,Other3,Other4)values('"+txtID.Text+"','"+txtName.Text+"','"+txtSex.Text+"','"+txtBirthday.Text+"','"+txtEdution.Text+"','"+cmbCompany.Text+"','"+txtKind1.Text+"','"+cmbLevel1.Text+"','"+txtDate1.Text+"','"+txtNumber1.Text+"','"+txtKind2.Text+"','"+cmbLevel2.Text+"','"+txtDate2.Text+"','"+txtNumber2.Text+"','"+txtKind3.Text+"','"+cmbLevel3.Text+"','"+txtDate3.Text+"','"+txtNumber3.Text+"','"+txtOther1.Text+"','"+txtOther2.Text+"','"+txtOther3.Text+"','"+txtOther4.Text+"')";inttemp=cmd2.ExecuteNonQuery();if(temp>0){MessageBox.Show("员工技能鉴定信息添加成功!","提示",MessageBoxButtons.OKCancel);}else{MessageBox.Show("员工技能鉴定信息添加失败!","提示",MessageBoxButtons.OKCancel);}标红语句提示未处理的OledbException,INSERTINTO语句的语法错误,什么原因,百思不得其解啊,求大神
最好参数化下SQL别人也容易看
解决方案十四:
首先我觉的不用连接符号吧+
解决方案十五:
insertinto表名values('','')
其他方案:
如果是字符串插入,写上单引号。“‘“+txtName.Text+”’”
其他方案:
首先我觉得你应该加个trycatch捕抓一下异常