qq_34631560 2017-12-04 08:26 采纳率: 100%
浏览 2646
已采纳

servlet运行没有报错 但是数据库插入数据失败

图片说明
try{
// 注册 JDBC 驱动器
Class.forName(driver);

// 打开一个连接
conn = DriverManager.getConnection(url,username,password);

        // 执行 SQL 查询
        stmt = conn.createStatement();
        String sql="SELECT USERNAME FROM USER";
        ResultSet rs=stmt.executeQuery(sql);
        while(rs.next()){   
        if(NAME.equals(rs.getString(1))){
        response.sendRedirect("rename.jsp");
        return;
        }
        } 
        rs.close();  
        stmt.close();
        //conn.commit();                
        String IP=request.getRemoteAddr(); 
        //out.println(IP);
        sql = "INSERT INTO USER(USERNAME,PASSWORD,RTIME,IP) VALUES(?,password(?),?,?)";
        PreparedStatement ps = conn.prepareStatement(sql);
        ps.setString(1,NAME);
        ps.setString(2,PASS);    
        ps.setTimestamp(3, new Timestamp(new java.util.Date().getTime())); 
        ps.setString(4,IP);
        //
        session.setAttribute("name",NAME);
        out.print("<a href="+"\"http://172.31.75.246/S2015150020/Prj08/ex8.jsp\">register successed !click into homepage</a>");
        out.println("</body></html>");
        // 完成后关闭              
        ps.close();  
        conn.close();
    } //end of try
    catch(SQLException se) {
        // 处理 JDBC 错误
        se.printStackTrace();
    } catch(Exception e) {
        // 处理 Class.forName 错误
        e.printStackTrace();
    }finally{
        // 最后是用于关闭资源的块
        try{
            if(stmt!=null)
            stmt.close();
        }catch(SQLException se2){
        }
        try{
            if(conn!=null)
            conn.close();
        }catch(SQLException se){
            se.printStackTrace();
        }
    }
            这是一个注册功能的servlet 查询操作正常 但是插入数据失败 这是为什么呢 
  • 写回答

2条回答 默认 最新

  • 发扬光大 2017-12-04 08:30
    关注

    在ps关闭之前,你没有调用 ps.executeUpdate();没有执行这个SQL语句~ 基本上JDBc和Servlet的问题,我一眼就看的出来是哪错了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏