sql >> Databasteknik >  >> RDS >> Sqlserver

Mitt VARCHAR(MAX)-fält begränsar sig till 4000; vad ger?

Rättad...

Tabellen kan vara varchar(max) men värdena du tilldelar är bara nvarchar (4000)

Det vill säga

maxcolumn = maxvalues + smallstring1 + **unicodestring** + smallstring3 + smallstring4 ...

Den högra sidan kommer att stanna vid nvarchar(4000) max på grund av datatypprioritet. nvarchar> varchar. När den tilldelas till maxkolumnen trunkeras den

Du måste säkerställa alla värden till höger vid varchar

Det är fortfarande som heltalsdivision... det som förvirrade mig var 4000-gränsen när varchar är 8000... detta antyder nvarchar någonstans.

För Nvarchar(Max) får jag bara 4000 tecken i TSQL?



  1. nullvalue:Visa NULL-värden i SQLite

  2. Hur man beräknar en kvadrat i SQL

  3. Lägg till en genererad kolumn till en tabell i SQLite

  4. Att lösa ett kommunikationslänksfel med JDBC och MySQL