<insert id="saveMember" parameterType="memberModel"> <selectKey resultType="java.lang.Long" keyProperty="memberId" order="BEFORE"> select member_seq.nextval as memberId from dual </selectKey> insert into MEMBER <trim prefix="(" suffix=")" suffixOverrides=","> MEMBER_ID, FULL_ADDRESS, MEMBER_RANK_ID, LOGIN_NAME, SEX, REG_TYPE, REAL_NAME, BIRTHDAY, IDENTIFY_CARD, MOBILE, EMAIL, PROVINCE_ID, CITY_ID, AREA_ID, ADDRESS, REG_TIME, empName_Add, deptName_Add, current_points, NOTES, IS_DELETE, ADD_TIME, ADD_USER_ID, EDIT_TIME, EDIT_USER_ID, IS_VALID, </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> #{memberId}, concat( concat( concat( ( select area_name from ec_area where area_id = #{provinceId ,jdbcType=DECIMAL} ), ( select area_name from ec_area where area_id = #{cityId,jdbcType=DECIMAL}) ), ( select area_name from ec_area where area_id = #{areaId,jdbcType=DECIMAL} ) ), #{address,jdbcType=VARCHAR} ), #{memberRankId,jdbcType=DECIMAL}, #{loginName,jdbcType=VARCHAR}, #{sex,jdbcType=CHAR}, #{regType,jdbcType=VARCHAR}, #{realName,jdbcType=VARCHAR}, #{birthday,jdbcType=VARCHAR}, #{identifyCard,jdbcType=VARCHAR}, #{mobile,jdbcType=VARCHAR}, #{email,jdbcType=VARCHAR}, #{provinceId,jdbcType=DECIMAL}, #{cityId,jdbcType=DECIMAL}, #{areaId,jdbcType=DECIMAL}, #{address,jdbcType=VARCHAR}, #{regTime,jdbcType=VARCHAR}, #{empNameAdd,jdbcType=VARCHAR}, #{deptNameAdd,jdbcType=VARCHAR}, #{currentPoints,jdbcType=DECIMAL}, #{notes,jdbcType=VARCHAR}, #{isDelete,jdbcType=CHAR}, #{addTime,jdbcType=VARCHAR}, #{addUserId,jdbcType=DECIMAL}, #{editTime,jdbcType=VARCHAR}, #{editUserId,jdbcType=DECIMAL}, #{isValid,jdbcType=CHAR}, </trim> </insert>