sql >> Databasteknik >  >> RDS >> Sqlserver

Utrymme som används av nollor i databasen

Att lagra en NULL i en kolumn varken kostar eller sparar specifikt utrymme. För data med fast längd är hela utrymmet fortfarande reserverat.

Å andra sidan kräver data med variabel längd endast längden på data plus overhead för att lagra den faktiska längden. Till exempel kommer en VARCHAR(n) att använda 2 byte data för att indikera den faktiska längden, så det lagringsutrymme som krävs är alltid n+2.

Dessutom bör det nämnas att om SET ANSI_PADDING PÅ kommer en char(n) med ett NULL-värde att bete sig som en VARCHAR(n).

Oavsett vad kommer du inte att känna igen utrymmesbesparingar från att lagra NULLs när du använder SQL Server 2000 eller SQL Server 2005. SQL Server 2008 introducerar konceptet med en gles kolumn, vilket kan ge besparingar för kolumner som i första hand är NULL.



  1. Hur man löser ORDER BY-satsen finns inte i SELECT-listan orsakad av MySQL 5.7 med SELECT DISTINCT och ORDER BY

  2. Hur aliaser jag en databas i MySQL?

  3. Gruppkonkat resultat avskurna

  4. Varför är låsning på bordsnivå bättre än låsning på radnivå för stora bord?