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 8000
jest o wiele mniejsza niż 2GB
wartość danych.
Widzę, że w tej varchar(max)
kolumnie znajdują się rekordy, które mają len(mycolumn)
> 100 000. Wiem więc, że mogę 8000
umieścić w varchar(max)
kolumnie znacznie więcej niż znaki .
Pytanie 1: W jaki sposób 8000
postacie 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ływanytext
i był traktowany jako inny typ danych.