sql >> Database teknologi >  >> RDS >> Sqlserver

Mit VARCHAR(MAX)-felt begrænser sig selv til 4000; hvad giver?

Rettet...

Tabellen kan være varchar(max), men de værdier, du tildeler, er kun nvarchar (4000)

Det vil sige

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

Højre side vil forblive på nvarchar(4000) maksimum på grund af datatypeprioritet. nvarchar> varchar. Når den tildeles til max-kolonnen, afkortes den

Du skal sikre dig alle værdier til højre ved varchar

Det er stadig ligesom heltalsdivision... det, der forvirrede mig, var 4000-grænsen, når varchar er 8000... dette antyder nvarchar et eller andet sted.

For Nvarchar(Max) får jeg kun 4000 tegn i TSQL?



  1. Sådan får du en liste over alle sprog i SQL Server (T-SQL)

  2. MySQL:valg af rækker, hvor en kolonne er nul

  3. Topforespørgsler om primærnøgle i Oracle med eksempler

  4. Find ud af historien om SQL-forespørgsler