sql >> Database >  >> RDS >> Sqlserver

Wat is het maximale aantal tekens dat nvarchar(MAX) kan bevatten?

Maximaal capaciteit is 2 gigabyte aan ruimte - dus u kijkt naar iets meer dan 1 miljard 2-byte tekens die in een NVARCHAR(MAX) passen veld.

Als u de meer gedetailleerde nummers van het andere antwoord gebruikt, zou u

. moeten kunnen opslaan
(2 ^ 31 - 1 - 2) / 2 = 1'073'741'822 double-byte characters

1 billion, 73 million, 741 thousand and 822 characters to be precise

in uw NVARCHAR(MAX) kolom (helaas is dat laatste halve teken verloren gegaan...)

Bijwerken: zoals @MartinMulder opmerkte:elke tekenkolom met variabele lengte heeft ook een overhead van 2 bytes voor het opslaan van de werkelijke lengte - dus ik moest nog twee bytes aftrekken van de 2 ^ 31 - 1 lengte die ik eerder had bepaald - je kunt dus 1 Unicode-teken minder opslaan dan ik eerder had geclaimd.



  1. Oracle - Kloontabel - Structuur, gegevensbeperkingen en alles

  2. Wat is de beste manier om mediabestanden op te slaan in een database?

  3. Hoe IFNULL() werkt in MariaDB

  4. Hoe INSERT-statements uit een query te genereren bij gebruik van SQLcl (Oracle)