Raul Andres Duque escribió:
> Cordial Saludo.
>
> Tenía una duda a cerca de qué espacio ocupa un NULL en la DB. De
> inicio pensaría que si es un tipo de dato con un tamaño fijo, ocupa el
> mismo tamaño del tipo de dato. Si es un tipo de dato VARIANTE
> (varchar), el tañano debe ser XX caracteres dependiendo de la
> codificación.
No.
Cada tupla tiene una mascara de bits de atributos nulos. Si una tupla
no tiene ningun atributo nulo, el bitmask no se almacena. Si hay al
menos un nulo, se almacena.
Cada atributo nulo usa un bit de esa mascara. Si un atributo es nulo,
se pone ese bit en 1, y los "datos" simplemente no se guardan. Visto de
esa forma, un atributo nulo no usa ningun espacio (sin embargo se gasta
el espacio de guardar la mascara de nulos).
Si tienes un varchar(1000) que es nulo, el espacio desperdiciado es 0.
--
Alvaro Herrera Valdivia, Chile Geotag: -39,815 -73,257
"Hay quien adquiere la mala costumbre de ser infeliz" (M. A. Evans)
In response to
Responses
pgsql-es-ayuda by date
| Next: | From: Raul Andres Duque | Date: 2008-09-29 16:24:49 |
| Subject: Re: Cuanto ocupa un NULL ?? |
| Previous: | From: Raul Andres Duque | Date: 2008-09-29 15:29:15 |
| Subject: Re: Cuanto ocupa un NULL ?? |