sql >> Databasteknik >  >> RDS >> Sqlserver

varför varchar(max) inte lagrar data mer än 8000 tecken

Du trunkerar data till 8000 byte innan du infogar den. För att skapa ett värde som är längre än 8000 tecken måste du använda datatypen varchar(max), medan typen av 'a' bara är varchar.

create table test(name varchar(max))
insert into test
values(replicate(CAST('a' AS varchar(MAX)), 100000));

select len(name) from test;



  1. Lagrade procedurfelargument 1 för rutin ... är inte en variabel eller NY pseudovariabel i BEFORE trigger

  2. Långsam MySQL-fråga på uppdateringssatsen

  3. Databassäkerhet i Oracle

  4. Välj ett inlägg som inte har en viss tagg