sql >> Database teknologi >  >> RDS >> Oracle

Forskellen mellem BYTE og CHAR i kolonnedatatyper

Lad os antage, at databasens tegnsæt er UTF-8, som er den anbefalede indstilling i nyere versioner af Oracle. I dette tilfælde tager nogle tegn mere end 1 byte at gemme i databasen.

Hvis du definerer feltet som VARCHAR2(11 BYTE) , Oracle kan bruge op til 11 bytes til lagring, men du kan faktisk ikke gemme 11 tegn i feltet, fordi nogle af dem tager mere end én byte at gemme, f.eks. ikke-engelske tegn.

Ved at definere feltet som VARCHAR2(11 CHAR) du fortæller Oracle, at det kan bruge plads nok til at gemme 11 tegn, uanset hvor mange bytes det tager at gemme hver enkelt. Et enkelt tegn kan kræve op til 4 bytes.



  1. Sådan omdøbes en MySQL-database

  2. Hvad er standardbegrænsningsnavnet i Oracle?

  3. Hjælpeprogram:Generer PL/SQL-procedure til eksport af data fra en tabel på 2 minutter

  4. Hvordan man laver et valg med array indeholder værdisætning i psql