본문 바로가기
SQL/MSSQL

[MSSQL]datetime타입의 컬럼에 Null값을 Insert할 때 1999-01-01이 들어가는 현상과 해결법

by kkaboo 2024. 1. 10.
728x90

 

 

1900-01-01이 들어간 데이터

🔍 현상

NULL을 허용하는 VALIDITY_DATE 컬럼에 데이터 값을 입력하지 않고 저장을 시켰는데 위와 같이 1900-01-01데이터가 삽입되었다.

 

💡 해결

처음엔 ISNULL로 해결을 해보려고 했으나... 1900-01-01이 들어가는건 마찬가지여서 IFNULL을 사용해 해결했다.

 

        INSERT
          INTO T_TEMP_TABLE
                               (  MAIN_CD
                                , VALIDITY_DATE
                                  .
                                  .
                                  .
                               )
               VALUES ( #{mainCd}
                      , IIF(#{validityDate} = '', NULL, #{validityDate})
                        .
                        .
                        .)

 

select 할때도 datetime타입의 데이터가 NULL인경우에는 1900-01-01가 뿅 튀어나와서 애를 먹었었는데 이 부분은 따로 정리를 해야겠다.

 

728x90