miércoles, 1 de abril de 2009

TABLAS

Tabla en las bases de datos, se refiere al tipo de modelado de datos, donde se guardan los datos recogidos por un programa. Su estructura general se asemeja a la vista general de un programa de Hoja de cálculo.
Las tablas se componen de dos estructuras:
Campo: Corresponde al nombre de la columna. Debe ser único y además de tener un tipo de dato asociado.
Registro: Corresponde a cada fila que compone la tabla. Allí se componen los datos y los registros. Eventualmente pueden ser nulos en su almacenamiento.
En la definición de cada campo, debe existir un nombre único, con su tipo de dato correspondiente. Esto es útil a la hora de manejar varios campos en la tabla, ya que cada nombre de campo debe ser distinto entre sí.
A los campos se les puede asignar, además, propiedades especiales que afectan a los registros insertados. El campo puede ser definido como índice o autoincrementable, lo cual permite que los datos de ese campo cambien solos o sean el principal indicar a la hora de ordenar los datos contenidos.
Cada tabla creada debe tener un nombre único en la cada Base de Datos, haciéndola accesible mediante su nombre o su seudónimo (Alias) (dependiendo del tipo de base de datos elegida).
La estructura de las tablas viene dado por la forma de un archivo plano, los cuales en un inicio se componían de un modo similar.

MODELAMIENTO DE BASE DE DATOS

El Modelado es la etapa en donde identificamos y “dibujamos” los conjuntos de datos que el Usuario requiere en un Sistema de información. El Diseño Lógico es la etapa donde transformamos ese modelo en un diseño relacional (asumiendo que es el más utilizado), independiente de la herramienta (DBMS) que vayamos a utilizar. El Diseño Físico es aquel en donde especificamos características propias del DBMS elegido, como tipos de dato concretos, parámetros por cada tabla, campo, relación, etc. Y la construcción, es en si el proceso de capturar los “metadatos” o datos sobre datos para materializar el diseño relacional dentro de nuestro DBMS, quizá usando scripts SQL.
Generalmente se usa el modelo de Entidad-Relación para el modelado y diseño lógico de bases de datos, en donde a través del reconocimiento de entidades débiles, entidades fuertes, relaciones entre entidades y su semántica vamos armando la red de la base de datos, para después con algunas reglas, llegar en pocos pasos al diseño lógico. De hecho las herramientas gráficas de diseño de Base de Datos que conozco, en su mayoría usan algún “sabor” o variante del modelado Entidad-Relación para elaborar el diseño lógico.

DISEÑO DE BASE DE DATOS

El modelo relacional:
Todos los datos se representan en tablas.
Incluso los resultados de cualquier consulta son otra tabla.
Las tablas están compuestas por filas y columnas.
Las filas y las columnas, en principio, carecen de orden (p.ej., el orden en el que se muestren las filas y las columnas no importa).
Las filas sólo se ordenan si se le indica a la base de datos que lo haga, mediante el correspondiente comando. De no ser así, el orden será arbitrario, y puede cambiar en caso de tratarse de una base datos dinámica.
El orden de las columnas lo determina cada consulta.
Cada tabla tiene una clave primaria, un identificador único, compuesto por una o más columnas.
La mayoría de las claves primarias están formadas por una única columna (p.ej., CIUDAD_ID).
Para establecer una relación entre dos tablas es necesario incluir, en forma de columna, en una de ellas la clave primaria de la otra. A esta columna se le llama clave secundaria.
Estos dos conceptos --clave primaria y secundaria-- son los más importantes en el diseño de bases de datos. Es importante dedicarles tiempo, para entender bien en qué consisten y cómo funcionan. Cualidades de un buen diseño de base de datos
Reflejar la estructura del problema en el mundo real.
Ser capaz de representar todos los datos esperados, incluso con el paso del tiempo.
Evitar el almacenamiento de información redundante.
Proporcinar un acceso eficaz a los datos.
Mantener la integridad de los datos a lo largo del tiempo.
Ser claro, coherente y de fácil comprensión.
Nota: A veces, estos objetivos pueden ser contradictorios.