Z tego dokumentu Microsoft +
n określa długość łańcucha i może mieć wartość od 1 do 8 000. max oznacza, że maksymalny rozmiar pamięci to 2 ^ 31-1 bajtów (2 GB). Rozmiar pamięci to faktyczna długość wprowadzonych danych + 2 bajty.
Pomóż mi to zrozumieć.
Wydaje się, że maksymalna liczba znaków w varchar 8000jest o wiele mniejsza niż 2GBwartość danych.
Widzę, że w tej varchar(max)kolumnie znajdują się rekordy, które mają len(mycolumn)> 100 000. Wiem więc, że mogę 8000umieścić w varchar(max)kolumnie znacznie więcej niż znaki .
Pytanie 1: W jaki sposób 8000postacie wchodzą w grę i gdzie powinienem być tego świadomy?
Pytanie 2 : czy zapytanie bazy danych .net do tej kolumny zawsze zwróci pełny wynik zawierający ponad 100 000 znaków?
varchar(max)kiedyś był wywoływanytexti był traktowany jako inny typ danych.