'12-JUN-87'
is geen datum, het is een letterlijke tekenreeks.
Als u een datum wilt genereren om in een tabel in te voegen, moet u ofwel:
- Gebruik een ANSI letterlijke datum
:
DATE '1987-06-12'
- Of, expliciet, converteer een letterlijke tekenreeks naar een datum
:
TO_DATE( '12-JUN-87', 'DD-MON-YY', 'NLS_DATE_LANGUAGE = American' )
Als je een letterlijke tekenreeks als datum probeert te gebruiken, zal Oracle proberen deze impliciet om te zetten in een datum met behulp van de NLS_DATE_FORMAT
sessieparameter als het formaatmasker. Als dit formaatmasker niet overeenkomt met het formaat van de tekenreeks, wordt er een uitzondering gegenereerd.
Opmerking:de sessieparameters kunnen door de gebruiker worden gewijzigd en kunnen voor elke gebruiker anders zijn, dus u moet niet op deze standaardwaarde vertrouwen.