sql >> Databáze >  >> RDS >> Sqlserver

sql varchar(max) vs varchar(fix)

MSDN

  • Varchar použijte, když se velikost záznamů dat sloupců výrazně liší.
  • Použijte varchar(max), když se velikost záznamů dat sloupců výrazně liší a velikost může přesáhnout 8 000 bajtů.

Když je délka specifikována v deklaraci VARCHAR proměnná nebo sloupec, maximální povolená délka je 8000 . Pokud je délka větší než 8000 , musíte použít MAX specifikátor jako délka. Pokud je délka větší než 8000 je zadáno, dojde k následující chybě (za předpokladu, že zadaná délka je 10000 ):

AKTUALIZACE :-Našel jsem odkaz, o který bych se rád podělil:-

Zde

Mezi Varchar[(n)] není velký rozdíl ve výkonu a Varchar(Max) . Varchar[(n)] poskytuje lepší výsledky výkonu ve srovnání s Varchar(Max) . Pokud víme, že data, která mají být uložena ve sloupci nebo proměnné, jsou menší nebo rovna 8000 znakům, pak použití tohoto datového typu Varchar[(n)] poskytuje lepší výkon ve srovnání s Varchar(Max). Příklad:Když jsem spustil níže uvedené skript změnou proměnné @FirstName zadejte do Varchar(Max) pak to u 1 milionu přiřazení trvá dvojnásobek času, než když jsme použili datový typ jako

Varchar(50) for variable @ FirstName.
DECLARE @FirstName VARCHAR(50), @COUNT INT=0, @StartTime DATETIME = GETDATE()
WHILE(@COUNT < 1000000)
BEGIN
SELECT @FirstName = 'Suraj', @COUNT = @COUNT +1
END
SELECT DATEDIFF(ms,@StartTime,GETDATE()) 'Time Taken in ms'
GO 


  1. Python seznam parametru String to SQL IN

  2. ORA-01847 den v měsíci musí být mezi 1 a posledním dnem v měsíci - ale data jsou v pořádku

  3. Pomocí funkce počet určit, co se zobrazí v příkazu if

  4. Pochopení vstupního výstupního systému Hadoop