Valores para atributos de clave
Cuando diseña una base de datos debe decidir qué valores son aceptables para los distintos atributos de una entidad.
Por ejemplo, puede que no desee permitir datos numéricos en un atributo para un nombre de persona. Los tipos de datos que elige limitan los valores que se aplican a un atributo determinado, pero también puede utilizar otros mecanismos. Estos otros mecanismos son dominios, valores nulos y valores por omisión.
Dominio
Un dominio describe las condiciones que un valor de atributo debe cumplir para ser un valor válido. Algunas veces el dominio identifica un rango de valores válidos. Cuando se define el dominio para un atributo determinado, se aplican reglas empresariales para asegurar que los datos tengan sentido.
- Un dominio puede establecer que un atributo de número de teléfono debe ser un valor de 10 dígitos que únicamente contenga números. No querrá que el número de teléfono esté incompleto ni que contenga caracteres alfabéticos o especiales con lo cual no sería válido. Puede elegir entre utilizar un tipo de datos numérico o un tipo de datos de caracteres. Sin embargo, el dominio establece la regla empresarial de que el valor debe ser un valor de 10 dígitos formado por números. Antes de finalizar esta regla, considere si necesita números de teléfono internacionales, que tienen formatos diferentes.
- Un dominio puede establecer que un atributo de mes debe ser un valor de 2 dígitos entre 01 y 12. De nuevo, puede elegir entre utilizar tipos de datos de fecha y hora, de caracteres o numéricos para este valor, pero el dominio exige que el valor debe estar dentro del rango de 01 a 12. En este caso, la incorporación del mes en un tipo de datos de fecha y hora es probablemente la mejor opción. Esta decisión debería revisarse de nuevo durante el diseño físico de la base de datos.
Valores nulos
Al diseñar atributos para entidades, a veces puede encontrarse con que un atributo no tiene un valor válido para cada instancia de la entidad. Por ejemplo, puede que desee un atributo para un nombre medio de persona, pero no puede exigir un valor porque algunas personas no tienen un nombre medio. En estos casos, puede definir el atributo de modo que pueda contener valores nulos.
Un valor nulo es un indicador especial que representa la ausencia de un valor. La ausencia del valor puede deberse a que es desconocido, todavía no se ha proporcionado o no existe. DBMS trata el valor nulo como un valor real, no como un valor cero, un blanco ni una serie vacía.
Del mismo modo que debería permitirse que algunos atributos contengan valores nulos, otros atributos no deberían contener valores nulos.
Valores por omisión
En algunos casos, puede que no desee que un atributo específico contenga un valor nulo, pero no desea exigir que el usuario o programa proporcione siempre un valor. En este caso, puede ser apropiado utilizar un valor por omisión.
Un valor por omisión es un valor que se aplica a un atributo si no hay disponible ningún otro valor válido.