개발

[오류코드]ORA-01861: literal does not match format string 본문

오류해결

[오류코드]ORA-01861: literal does not match format string

Study 2021. 3. 2. 11:37

영문버전 윈도우를 깔고 오라클을하다보니

 

SQL> insert into student(name,money,regdate) values('홍길동',2000,'2021-03-02');
insert into student(name,money,regdate) values('홍길동',2000,'2021-03-02')
                                                                   *
ERROR at line 1:
ORA-01861: literal does not match format string

 

 

date 포멧 에러가 나더라구요 

 

1
SQL> SELECT VALUE FROM NLS_SESSION_PARAMETERS WHERE PARAMETER = 'NLS_DATE_FORMAT';
cs

이걸 입력해주시면 현재 데이트 포멧이 나옵니다

 

VALUE
--------------------------------------------------------------------------------
DD-MON-RR

저같은 경우는 이렇게 나와서

보편적인 한국스타일 데이트 포멧으로 변경해줬습니다.

 

1
SQL> ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD';
cs

SQL> ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD';
Session altered.

 

다시 기존 쿼리문을 입력해주니.
SQL> insert into student(name,money,regdate) values('홍길동',2000,'2021-03-02');
1 row created.

 

잘 되는것을 확인할 수 있습니다.