sql >> Databasteknik >  >> RDS >> Oracle

Vilket är standardvärdet för VARCHAR2 i Oracle?

Standard är en av NLS parametrar för din session, nämligen NLS_LENGTH_SEMANTICS . Så här kan jag kontrollera det från min session:

select value
from   v$nls_parameters
where  parameter = 'NLS_LENGTH_SEMANTICS'
;

VALUE 
------
BYTE

Du kan ändra din session för att ändra värdet (eller så kan du göra det via det grafiska gränssnittet i något som SQL Developer). Du kan också lägga in ett ALTER SESSION-kommando i din LOGIN.SQL (eller globalt, GLOGIN.SQL ) om du använder en, om du vill att ett specifikt värde ska tilldelas när du startar en session. Annars, när du startar en ny session kommer standardinställningen att komma från din SPFile (mest troligt).

Så här kan jag kontrollera vad som finns i min SPFile:

select value
from   v$parameter
where  name = 'nls_length_semantics'
;


VALUE 
------
BYTE

Jag kan också ändra mitt system för att ändra vad som finns i SPFilen, men det är en DBA:s jobb (tror jag). Det KAN i alla fall ändras.

Detta liknar andra NLS parametrar - överväg NLS_DATE_FORMAT till exempel är beteendet väldigt likt.



  1. 12c DBA_USERS Ändringar

  2. Oracle NLS_DATE_FORMAT fungerar inte korrekt

  3. En guide till PGpool - Tips och observationer:del tre

  4. ORA-01111 i MRP i fysisk standby-databas