¿Cuál es el mejor diseño para una tabla, un Type
campo que es de int
o char(1)
? En otras palabras, dado este esquema:
create table Car
(
Name varchar(100) not null,
Description varchar(100) not null,
VehType .... not null
)
¿Es más eficiente (en cuanto al rendimiento) VehType
ser un int
o un char(1)
? Digamos que tiene cinco tipos de automóviles, ¿debería usar los valores incrementales 0 -> 4, o caracteres para los tipos (por ejemplo, 'v', 's', 'c', 't', 'm')?
Si es más que eso, usaría una tabla Tipo separada y tendría una relación de clave externa, pero no veo la necesidad de eso.
Noto que la sys.objects
vista de catálogo usa un carácter para el type
campo. ¿Hay alguna razón para eso? ¿Estoy agarrando el aire aquí y es con lo que me siento más cómodo?