jsp中插入一行数据 javax.servlet.ServletException: java.sql.SQLException: 索引中丢失 IN 或 OUT参数
org.apache.jasper.JasperException:AnexceptionoccurredprocessingJSPpage/project/add.js...
org.apache.jasper.JasperException: An exception occurred processing JSP page /project/add.jsp at line 36
33:
34: String sql = "insert into emp values("+ Integer.parseInt(empno)+","+"'"+ename+"'"+","+"'"+ename+"'"+","+Integer.parseInt(mgr)+","+"'"+job+"'"+","+d+","+Integer.parseInt(sal) +","+Integer.parseInt(comm)+","+Integer.parseInt(deptno) +")";
35: pstmt = conn.prepareStatement(sql);//将预编译的sql语句存储在pstmt对象中
36: int i= pstmt.executeUpdate();
37: sql = "select * from emp";
38: pstmt = conn.prepareStatement(sql);
39: rs = pstmt.executeQuery();
javax.servlet.ServletException: java.sql.SQLException: 索引中丢失 IN 或 OUT 参数:: 1 展开
33:
34: String sql = "insert into emp values("+ Integer.parseInt(empno)+","+"'"+ename+"'"+","+"'"+ename+"'"+","+Integer.parseInt(mgr)+","+"'"+job+"'"+","+d+","+Integer.parseInt(sal) +","+Integer.parseInt(comm)+","+Integer.parseInt(deptno) +")";
35: pstmt = conn.prepareStatement(sql);//将预编译的sql语句存储在pstmt对象中
36: int i= pstmt.executeUpdate();
37: sql = "select * from emp";
38: pstmt = conn.prepareStatement(sql);
39: rs = pstmt.executeQuery();
javax.servlet.ServletException: java.sql.SQLException: 索引中丢失 IN 或 OUT 参数:: 1 展开
3个回答
展开全部
参数个数不对,楼主仔细看一下你表中属性的个数以及顺序是否和你insert函数中的参数对应。
追问
改了 又换了一种错误 int i= pstmt.executeUpdate();这一行出错
javax.servlet.ServletException: java.sql.SQLException: ORA-01722: 无效数字
追答
非数字字符转化为数字时报的错,楼主看一下那个Integer.parseInt的参数是不是有无法转化成数字的变量,然后你试一下把d编程d.toString()
展开全部
没写字段名,默认为全部字段的插入 ,试着检查你给出的字段数量是否完整。
追问
全部插入了 字段数量完整 那个d是date类型的
java.text.SimpleDateFormat sim=new SimpleDateFormat("yyyy-MM-dd");
java.util.Date d=sim.parse(hiredate);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有给出字段名列表insert into emp(这里是字段列表) values
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询