老板要最后执行成功了返回“success”,失败返回“fail”public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { String strReturn = "fail";
String method = request.getParameter("method");
if("add".equals(method)){
String driverName = request.getParameter("name");
String driverTel = request.getParameter("tel");
String driverCardId = request.getParameter("cardId");
addDriver(driverName,driverTel,driverCardId);
strReturn = "success";  //这里写法老板说有问题,不能这样赋值。
}
PrintWriter out = response.getWriter();
out.println(strReturn);
out.flush();
out.close();
}public void addDriver(String driverName,String driverTel,String driverCardId){
DriverSql  driverSql = new DriverSql();
driverSql.addDriver(driverName, driverCardId, driverTel);

}
public class DriverSql {
JDBCconnection jdbcconn = new JDBCconnection();
        public  void addDriver(String name,String cardId,String phone){
jdbcconn.getConn();
Date date = new Date();

SimpleDateFormat dateToStr = new SimpleDateFormat ("yyyy-MM-dd HH:mm");
String strDate = dateToStr.format(date);
System.out.println("date:"+strDate);

String sql = "insert into driver (name,cardId,phone,regtime) " +
"values ('"+name+"', '"+cardId + "', '"+phone + "', '"+strDate+"')";
Statement stmt = jdbcconn.getStmt();
try {
stmt.executeUpdate(sql);//这附近需要怎么写,可以得到一个boolean类型的值。
} catch (SQLException e) {
e.printStackTrace();
}
jdbcconn.closeConn();
}
}就是怎样在 DriverSql 里给 addDriver方法写成String类型的返回值,

解决方案 »

  1.   

    ROW_COUNT() 
    ROW_COUNT()返回被前面语句升级的、插入的或删除的行数。 这个行数和 mysql 客户端显示的行数及 mysql_affected_rows() C API 函数返回的值相同。mysql> INSERT INTO t VALUES(1),(2),(3);问询完成, 表中有3 行 (0.00秒)记录: 3 重复: 0 警告: 0 mysql> SELECT ROW_COUNT();+-------------+| ROW_COUNT() |+-------------+|           3 |+-------------+表中有1行 (0.00 秒) mysql> DELETE FROM t WHERE i IN(1,2);问询完成, 找到2 行 (0.00 秒) mysql> SELECT ROW_COUNT();+-------------+| ROW_COUNT() |+-------------+|           2 |+-------------+表中有1行 (0.00 秒)
      

  2.   

    SQL语句被执行成功,只要你的SQL语句的语法没有错误,那么就是逻辑错误。逻辑上的错误SQL怎么判断呢??比如本来ID=100,你写成了ID=200,没有语法错误,也能执行成功,但实际值却是错误的,怎么判断呢?
      

  3.   

    在你的JAVA中使用 TRY CATCH来设置。
      

  4.   

    stmt.executeUpdate(sql) 有返回值的,<0,肯定有问题。>=0,指的是受影响的行数。
    如果出异常,那就是错误了。