StringBuilder sbSql = new StringBuilder(); sbSql.append("update t_user ") .append("user_name = ?, ") .append("password = ?, ") .append("contact_tel = ?, ") .append("email = ?, ") .append("where user_id = ? ");
sbSql.executeUpdate();执行的时候会出错:java.sql.SQLException: ORA-00971: missing SET keyword
意为缺少SET关键字,即SQL语句本身出错了。
加上set关键字,改为以下:
StringBuilder sbSql = new StringBuilder(); sbSql.append("update t_user ") .append("set user_name = ?, ") .append("password = ?, ") .append("contact_tel = ?, ") .append("email = ?, ") .append("where user_id = ? ");
sbSql.executeUpdate();执行的时候仍会出错:java.sql.SQLException: ORA-01747: invalid user.table.column, table.column, or column specification
原因是什么呢,因为上面的SQl语句中多写了一个逗号,就是那个标为红色的逗号,去掉就可以了。