id, teaching_class_id, student_user_id, admin_class_id, status, join_reason, join_time, exit_time, create_time insert into teaching_class_student id, teaching_class_id, student_user_id, admin_class_id, status, join_reason, join_time, exit_time, create_time, #{id,jdbcType=VARCHAR}, #{teachingClassId,jdbcType=VARCHAR}, #{studentUserId,jdbcType=VARCHAR}, #{adminClassId,jdbcType=VARCHAR}, #{status,jdbcType=VARCHAR}, #{joinReason,jdbcType=VARCHAR}, #{joinTime,jdbcType=TIMESTAMP}, #{exitTime,jdbcType=TIMESTAMP}, #{createTime,jdbcType=TIMESTAMP}, update teaching_class_student set status = 'EXITED', exit_time = CURRENT_TIMESTAMP where student_user_id = #{studentUserId,jdbcType=VARCHAR} and status = 'IN_PROGRESS' and teaching_class_id != #{teachingClassId,jdbcType=VARCHAR} update teaching_class_student set status = 'IN_PROGRESS', admin_class_id = #{adminClassId,jdbcType=VARCHAR}, join_reason = #{joinReason,jdbcType=VARCHAR}, join_time = CURRENT_TIMESTAMP, exit_time = null where student_user_id = #{studentUserId,jdbcType=VARCHAR} and teaching_class_id = #{teachingClassId,jdbcType=VARCHAR} delete from teaching_class_student where teaching_class_id = #{teachingClassId,jdbcType=VARCHAR} update teaching_class_student set status = 'EXITED', exit_time = CURRENT_TIMESTAMP where student_user_id = #{studentUserId,jdbcType=VARCHAR} and teaching_class_id = #{teachingClassId,jdbcType=VARCHAR} and status = 'IN_PROGRESS'