access插入记录到一半时提示语法错误(操作符丢失),并不是一条记录都没插入成功,而是插入一定数量记录后
要插入500条记录到access数据表中,到第296条时提示语法错误,如下图SQL语句如下:strSQL="insertinto"+tables[j]+"(Webfrom...
要插入500条记录到access数据表中,到第296条时提示语法错误,如下图
SQL语句如下:
strSQL = "insert into " + tables[j] + "(Webfrom,Uploadtime,Brand,Title,URL,Content,Articlekind,Reviewnum,Monitortime,Transmitsite,Abstract,Negkind,Negreason,Harmlevel,Imagepath,Transmitnum,Followernum) VALUES ('" + dr.GetString(1) + "','" + dr.GetString(2) + "','" + dr.GetString(3) + "','" + dr.GetString(4) + "','" + dr.GetString(5) + "','" + dr.GetString(6) + "','" + dr.GetString(7) + "','" + dr.GetString(8) + "','" + dr.GetString(9) + "','" + dr.GetString(10) + "','" + dr.GetString(11) + "','" + dr.GetString(12) + "','" + dr.GetString(13) + "','" + dr.GetString(14) + "','" + dr.GetString(15) + "','" + dr.GetString(16) + "','" + dr.GetString(17) + "')"; OleDbCommand cmd3 = new OleDbCommand(strSQL, myConn); cmd3.ExecuteNonQuery();
tables[j]是表名,字段Content是备注类型,出错也是在这个字段里错的,再次说明,是插入第296条记录后才提示出错的,我看了要插入的内容,没什么特殊的。请高手指教。。 展开
SQL语句如下:
strSQL = "insert into " + tables[j] + "(Webfrom,Uploadtime,Brand,Title,URL,Content,Articlekind,Reviewnum,Monitortime,Transmitsite,Abstract,Negkind,Negreason,Harmlevel,Imagepath,Transmitnum,Followernum) VALUES ('" + dr.GetString(1) + "','" + dr.GetString(2) + "','" + dr.GetString(3) + "','" + dr.GetString(4) + "','" + dr.GetString(5) + "','" + dr.GetString(6) + "','" + dr.GetString(7) + "','" + dr.GetString(8) + "','" + dr.GetString(9) + "','" + dr.GetString(10) + "','" + dr.GetString(11) + "','" + dr.GetString(12) + "','" + dr.GetString(13) + "','" + dr.GetString(14) + "','" + dr.GetString(15) + "','" + dr.GetString(16) + "','" + dr.GetString(17) + "')"; OleDbCommand cmd3 = new OleDbCommand(strSQL, myConn); cmd3.ExecuteNonQuery();
tables[j]是表名,字段Content是备注类型,出错也是在这个字段里错的,再次说明,是插入第296条记录后才提示出错的,我看了要插入的内容,没什么特殊的。请高手指教。。 展开
2个回答
展开全部
检查你插入的值里面是否有特殊符号,比如引号、空值、逗号。
要杜绝这种错误,用类似下面的格式
//需要仿照自己写其他字段
strSQL = string.Format("insert into {0}(Webfrom,Uploadtime) VALUES (@Webfrom,@Uploadtime)", tables[j]);
OleDbCommand cmd3 = new OleDbCommand(strSQL, myConn);
cmd3.Parameters.Add("Webfrom", dr.GetString(1));
cmd3.Parameters.Add("Uploadtime", dr.GetString(2));
//...
cmd3.ExecuteNonQuery();
追问
不是特殊符号的问题,插入都是论坛上的帖子内容,避免不了引号、逗号之类的,而且很多列的值是空值,只是个别记录插入不成功
追答
既然避免不了逗号,就更不能用你的拼接sql了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询