Hvis du gør det:
alter session set nls_date_format='DD DDTH MON YYYY';
Du får en fejl, ORA-01810: format code appears twice
.
Hvis du bruger samme formatmodel som din TO_CHAR
så virker det:
alter session set nls_date_format='DY DDTH MON YYYY';
Session altered.
select SYSDATE from dual;
SYSDATE
-----------------
FRI 23RD AUG 2013
Dette virker i SQL Developer og SQL*Plus.
For dit opdaterede spørgsmål om indsættelse, dokumentationen til dato- og tidsformat siger:
Så du kan ikke bruge en streng med suffikset som en del af din indsættelse, hverken eksplicit eller via NLS_DATE_FORMAT
. Du skal fjerne den fra strengen eller skræddersy formatmodellen, der skal behandles som en fast værdi.