Estoy trabajando en el desarrollo de una base de datos relacional que rastrea las transacciones que ocurren en un dispositivo en el que estoy trabajando para mi empresa. Existen diferentes tipos de transacciones que pueden ocurrir en el dispositivo, por lo que tenemos un campo "trans_type" en una de nuestras tablas de registros principales. Mi grupo ha decidido convertir el tipo de este campo en un entero y tratarlo como un tipo enumerado. Mi intuición me dice que sería una mejor idea hacer de este campo una cadena para que los datos de nuestra base de datos sean más legibles y utilizables. Mis compañeros de trabajo parecen estar preocupados de que esto pueda causar más problemas de lo que vale. Las comparaciones de cadenas son demasiado costosas y la posibilidad de errores tipográficos es una barrera demasiado grande.
Entonces, en su opinión, cuando se trata de un campo en una base de datos relacional que es esencialmente un valor enumerado, ¿es una mejor decisión de diseño hacer de este campo un entero o una cadena? ¿O hay alguna otra alternativa que he pasado por alto?
Nota: los tipos enumerados explícitos no son compatibles con la base de datos que estamos utilizando. Y el software que estamos desarrollando que interactuará con esta base de datos está escrito en C ++.