투케이2K

84. (TWOK/ERROR) [Mysql] DATETIME 컬럼 insert 수행 시 자릿수 포맷 에러 발생 이슈 본문

투케이2K 에러관리

84. (TWOK/ERROR) [Mysql] DATETIME 컬럼 insert 수행 시 자릿수 포맷 에러 발생 이슈

투케이2K 2022. 7. 13. 07:57

[환경 설정 및 설명]

프로그램 : Mysql

설 명 : DATETIME 컬럼 insert 수행 시 자릿수 포맷 에러 발생 이슈

 

[에러 원인]

1. Mysql 컬럼 타입이 DATETIME 인 경우 연, 월, 일, 시, 분, 초 형식을 맞추지 않아서 INSERT 구문에서 에러가 발생

 

[해결 방법]

1. 프로시저 인풋 값으로 들어온 데이터 길이 확인 및 RPAD 사용해 연, 월, 일, 시, 분, 초 형식 14 자리 포맷 실시

 

        -- [DATETIME 컬럼어 INSERT 위해 14 자리 형식 맞춤]
        SET M_FORMAT_DATE = RPAD(I_REDT,14,'0');




        -- [DATETIME 으로 형변환 수행 실시 및 테이블에 INSERT]
        START TRANSACTION;

        INSERT INTO smu.TB_MVER (MVER_REDT, MVER_NAME)
        VALUES (DATE_FORMAT(CAST(M_FORMAT_DATE AS DATETIME), '%Y-%m-%d %H:%I:%s'), I_NAME);

        COMMIT;

 

반응형
Comments