Om du gör det:
alter session set nls_date_format='DD DDTH MON YYYY';
Du får ett felmeddelande, ORA-01810: format code appears twice
.
Om du använder samma formatmodell som din TO_CHAR
då fungerar det:
alter session set nls_date_format='DY DDTH MON YYYY';
Session altered.
select SYSDATE from dual;
SYSDATE
-----------------
FRI 23RD AUG 2013
Detta fungerar i SQL Developer och SQL*Plus.
För din uppdaterade fråga om att infoga, dokumentationen för datum- och tidsformat säger:
Så du kan inte använda en sträng med suffixet som en del av din infogning, varken uttryckligen eller via NLS_DATE_FORMAT
. Du måste ta bort den från strängen eller skräddarsy formatmodellen som ska behandlas som ett fast värde.