当前位置: 代码迷 >> Java Web开发 >> 速求:这条语句错了吗?PS:小弟我正在求职上机
  详细解决方案

速求:这条语句错了吗?PS:小弟我正在求职上机

热度:104   发布时间:2016-04-17 12:23:04.0
速求:这条语句错了吗?PS:我正在求职上机
Java code
Connection conn = new Database().getConn();        String sqlStr = "insert into user (name,password,email,sex,tel) values (?,?,?,?,?)";        try {            PreparedStatement ps = conn.prepareStatement(sqlStr);            int i=1;            ps.setString(i++, user.getName());            ps.setString(i++, user.getPassword());            ps.setString(i++, user.getEmail());            ps.setInt(i++, user.getSex().intValue());            ps.setString(i++, user.getTel());            ps.executeQuery();        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }


------解决方案--------------------
Connection conn = new Database().getConn();
String sqlStr = "insert into user (name,password,email,sex,tel) values (?,?,?,?,?)";
try {
PreparedStatement ps = conn.prepareStatement(sqlStr);
int i=1;
ps.setString(i, user.getName());
ps.setString(i++, user.getPassword());
ps.setString(i++, user.getEmail());
ps.setInt(i++, user.getSex().intValue());
ps.setString(i++, user.getTel());
ps..executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
修改这两处试试看
------解决方案--------------------
我觉得只须修改:将 ps.executeQuery()改为:ps.executeUpdate() 
6楼的另一个修改:
ps.setString(i, user.getName());
会导致ps.setString(i++, user.getPassword()); 也对i字段进行插入而出错。
------解决方案--------------------
应该是 不报错,但是不会执行更新。。。
将 ps.executeQuery()改为:ps.executeUpdate()
才有效果。。
------解决方案--------------------
Java code
Connection conn = new Database().getConn();        String sqlStr = "insert into user (name,password,email,sex,tel) values (?,?,?,?,?)";        try {            PreparedStatement ps = conn.prepareStatement(sqlStr);            int i=1;            ps.setString(i++, user.getName());            ps.setString(i++, user.getPassword());            ps.setString(i++, user.getEmail());            [color=#FF0000]ps.setInt(i++, user.getSex().intValue());[/color]            ps.setString(i++, user.getTel());            [color=#FF0000]ps.executeQuery();[/color]        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }
  相关解决方案