Hay un buen artículo aquí que trata este punto. Las cosas clave a tener en cuenta son que no hay diferencia en el tamaño de la tabla, sin embargo, algunos usuarios prefieren usar una cadena vacía, ya que puede facilitar las consultas, ya que no hay que hacer una verificación NULL. Simplemente verifica si la cadena está vacía. Otra cosa a tener en cuenta es lo que significa NULL en el contexto de una base de datos relacional. Significa que el puntero al campo de caracteres se establece en 0x00 en el encabezado de la fila, por lo tanto, no hay datos para acceder.
Actualizar Hay un artículo detallado aquí que habla de lo que realmente está sucediendo en una fila
el resultado de DBCC PAGE muestra que tanto las cadenas NULL como las vacías ocupan cero bytes .