如题

解决方案 »

  1.   

    你先把你的 sql 语句拿出来看看,哪错了
      

  2.   

    sql语句呢?没有sql语句怎么找错?
      

  3.   

    sql = "UPDATE STUDENTS SET (姓名,性别,专业,密码) = (?,?,?,?) WHERE 学号 = ?";Connection conn = DriverManager.getConnection(this.dbUrl,
    this.user, this.password);
    if (!conn.isClosed()) {
    PreparedStatement st = conn.prepareStatement(sql);
    st.setString(1, student.getName());
    st.setString(2, student.getSex());
    st.setString(3, student.getMajor());
    st.setString(4, student.getPassword());
    st.setString(5, student.getStudentID());
    Student stu = this.getStudentInfo(student.getStudentID());
    if (stu != null) {
    int count = st.executeUpdate();
      

  4.   

    [Quote=引用 3 楼 leehom_zhang 的回复:]
    sql = "UPDATE STUDENTS SET (姓名,性别,专业,密码) = (?,?,?,?) WHERE 学号 = ?";
    |
    oracle中有这种写法么? 还是我以前没留意这种写法
      

  5.   

    UPDATE STUDENTS 
    SET 姓名=?,
    性别=?,
    专业=?,
    密码 =?
    WHERE 学号 = ?
      

  6.   

    [Quote=引用 3 楼 leehom_zhang 的回复:]
    sql = "UPDATE STUDENTS SET (姓名,性别,专业,密码) = (?,?,?,?) WHERE 学号 = ?";我也是第一次见到这种写法~~
    update的写法,5楼的正解!
      

  7.   

    update table_name
       set 姓名 = ?,
           性别 = ?
    ...或者
    update table_name
       set (姓名,性别) = (select ?, ? from dual');你这是用 java 查询数据库吧