Categorías
< Todos los temas
Imprimir

Estándares para la Base de Datos

Introducción

Definir y mantener estándares para el diseño y la codificación de objetos es una buena y recomendada práctica que ayuda a brindar claridad en la construcción de los objetos y código generado, así como en lo que al diseño de base de datos se refiere.

Estos estándares facilitarán el mantenimiento y la escalabilidad de la infraestructura del ORA, facilitando el nivel de entendimiento de los diseñadores, desarrolladores y personal de soporte. Un esquema de nombrado consistente, se entenderán los modelos de datos de mejor manera y se producirán sentencias SQL más fácilmente.

Propósito

Con la finalidad de unificar la nomenclatura a ser utilizada para crear objetos en la capa de base de datos de la plataforma informática para el Portal del ORA, se ve la necesidad e importancia de la generación del presente documento, el cual tiene el objetivo de definir estándares de nomenclatura que deben ser utilizados por el personal técnico responsable del mantenimiento y administración del Portal del ORA y por cualquier equipo técnico de programación que desarrollara los modulos tematicos del ORA o desarrolle nuevos módulos para ser integrados al mismo, de manera que facilite el acceso y mantenimiento a los objetos de base de datos.

Estándares

Normas generales

  1. Los nombres de objetos de base de datos deberán estar escritos en ingles, ser auto-descriptivos y estarán sujetos a verificación por parte del área técnica del la OTCA, quien solicitará el cambio en el caso de no ser auto-descriptivos y/o presentar ambigüedades.
  2. Usar notación Underscore Separated, es decir utilizar el guión bajo (_) para separar palabras y en minúsculas. Ejemplo: detalle_beneficiario
  3. Utilizar nombres descriptivos para los campos. Utilizar nombres que resulten intuitivos y permitan entender el significado de los campos.
  4. Los nombres de las bases de datos, tablas deberían ir en plural y los nombres de los campos en singular.
  5. Utilizar las letras “id” en las columnas de clave primaria y foránea.
  6. Todos los campos llevarán la identificación del tipo de dato con el que fueron definidos.
  7. En una tabla, colocar primero la clave primaria seguida de las claves foráneas y a continuación los campos correspondientes a la tabla.
  8. Utilizar solo minúsculas para nombrar los elementos de la base de datos, esquemas, vistas, funciones, tablas, campos, etc.
  9. Evitar tener tablas innecesarias en el sistema.
  10. Todas las claves primarias deben ser secuenciales y auto-generadas desde el Gestor de Base de Datos. Esto solventara el borrado lógico desde el aplicativo, es decir que desde el sistema se ocultara o no se desplegara en la interfaz si esta con el estado eliminado.
  11. No se deben incluir letras con tilde ni Ñ, ñ, letras con diéresis Ejemplo: ïÿû.
  12. No usar caracteres especiales como por ejemplo ($, #, *, – +, etc., ´, ¨,).
  13. El nombre del objeto debe tener como longitud máxima 40 caracteres.
  14. No usar palabras reservadas.
  15. Al crear un nombre de objeto compuesto de dos palabras, colocar siempre la más importante primero.
  16. No usar nombres de un único carácter.
  17. Si existe una funcionalidad que no fue desarrollada en la aplicación, se deberá efectuar los cambios en la misma, y evitar realizar operaciones de inserts directamente en la base de datos.
  18. En caso de paquetes, funciones o procedimientos cada uno de ellos debe tener su descripción resumida en pocas palabras siendo claras

Notación de Esquemas

Los esquemas deberán nombrarse usando la siguiente nomenclatura:

Formato: [nombre_modulo] o [nombre_tematica]

Ejemplo: biodiversidad

Notación de Tablas

Las tablas deben nombrarse considerando lo siguiente:

  • Deben ser definidas en ingles sin utilizar espacios en blanco. Con notación Underscore Separated en minúsculas.
  • Las tablas identifican una entidad del sistema con un nombre completo. Pueden ser nombres simples o compuestos como podemos ver en el segundo ejemplo. Si la entidad o proceso representa a una tabla de uso temporal, el nombre de la misma debe ser precedida por el siguiente prefijo “temp_”.
  • Debe formarse un prefijo correspondiente al módulo al que hacen referencia seguida del nombre completo de la entidad.

Formato: [prefijo]_[nombre_descriptivo]

Ejemplos:

  • ora_usuarios
  • cites_registro_especies
  • temp_ora_indicadores

Notación de los Campos

Los campos de una tabla corresponden a los atributos de una entidad, describen propiedades de la misma. Las columnas deben ser nombradas según los lineamientos a continuación:

  • Debe formarse un prefijo como se indica en el ejemplo con las 3 primeras letras del nombre de la tabla y si el nombre descriptivo de la tabla es compuesto debe formarse con la 1 primera letra de la primera palabra más las 2 primeras letras de la segunda palabra del nombre.
  • Debe incluir el tipo de dato al que está asociado el campo, este debe formarse con 3 letras identificativas como se muestra en el ejemplo.

    Para algunos campos de la tabla usuarios.

    Formato: [prefijo]+[tipo de dato]+nombre del campo.
    Ejemplo: usu _txt_nombre. Formato: [prefijo]+[tipo de dato]+nombre del campo.
    Ejemplo: usu _int_id

  • Los tipos de datos se definirá de la siguiente manera.

    Enteros: int
    Ejemplo: llave primaria para la tabla usuarios: usu_int_id

    Textos: txt
    Ejemplo: nombre para la tabla usuarios: usu_txt_nombre

    Decimales: val
    Ejemplo: monto para la tabla usuarios: usu_val_monto

    Estados: sts
    Ejemplo: Estado del registro tabla usuarios como Activo (A), Inactivo (I) y Eliminado(E). usu_sts_registro

  • Los nombres deben ser simples, representativos e intuitivos.
  • Los nombres deben ser simples, representativos e intuitivos.
  • Los nombres de las columnas de una tabla deben estar expresados en singular.
  • El campo clave primaria de una tabla debe formarse con el nombre de la tabla más el sufijo ”id”.
    Ejemplo: Para la tabla usuarios, se definirían la clave primaria usu_int_id.
  • Las claves foráneas tendrán el mismo nombre de la clave primera de donde se hace referencia.
  • Campos que representen la misma entidad del mundo real, deben estar nombrados de la misma manera en todas las tablas de un esquema.
  • Ejemplo nombrar la clave primaria de la tabla “usuarios” en una tabla como “usu_int_id” y en otra “usu_int_key” es incorrecto.
  • Usar notación Underscore Separated en minúsculas.
Tabla de contenidos
Come2theweb