[mybatis] string 값 timestamp로 변경(milliseconds format)

wheezy·2022년 8월 30일
0

SQL

목록 보기
2/2

Intro

insert 시 2022-08-30 11:16:47.000 이와 같은 형식이 string으로 되어 있을 때
DB등록 시 timestamp형식으로 바꿔야 했다.

잘못된 예

<insert parameterType="testDto">
        INSERT INTO public."tbl"
        (
        <trim suffixOverrides=",">
            "ID",
            "REGIST_ID",
            "REGIST_DT",
            "UPDT_ID",
            "UPDT_DT"
        </trim>
        ) VALUES (
        <trim suffixOverrides=",">
            #{id},
            #{registId},
			#{registDt},
            #{updtId},
            now()
        </trim>
        )
    </insert>

해결된 예

<insert parameterType="testDto">
        INSERT INTO public."tbl"
        (
        <trim suffixOverrides=",">
            "ID",
            "REGIST_ID",
            "REGIST_DT",
            "UPDT_ID",
            "UPDT_DT"
        </trim>
        ) VALUES (
        <trim suffixOverrides=",">
            #{id},
            #{registId},
            // 여기를 그냥 #{registDt}하면 timestamp 오류 발생
            To_TIMESTAMP(#{registDt},'YYYY-MM-DD HH24:mi:ss.SSSSSX'),
            #{updtId},
            now()
        </trim>
        )
    </insert>
profile
🧀 개발을 하면서 도움이 되었던 부분을 기록하는 공간입니다 🧀

0개의 댓글