Por definición una base de datos es un conjunto de datos relacionados. Este conjunto tiene como objetivo el de satisfacer la necesidad de información de algún ente (p.ej. una empresa). Una base de datos debe estar implementada independientemente de las aplicaciones que hagan uso de ella, para así poder realizar una mejor administración de los datos por una parte, y a su vez, permitir la compatibilidad entre aplicaciones escritas en distintos lenguajes y la base de datos a consultar. Lo anterior se logra a través de un módulo llamado Data Base Management System (DBMS), que es el encargado de administrar la base de datos, realizando funciones como inserción, borrado y modificación de datos. El DBMS es un software (y a veces hardware y firmware). La comunicación entre las aplicaciones y el DBMS se hace a través de un lenguaje estandar llamado Structured Query Language (SQL). La figura siguiente muestra un diagrama de bloques de lo descrito anteriormente
Fig 2.1 Base De Datos Esquema En una base de datos con arquitectura cliente-servidor, el cliente corre una aplicación que envía un comando al servidor. Esta aplicación debe tener una API (Application Program Interface) que le permita interactuar con el DBMS que se va a utilizar. Una API es una biblioteca de llamadas a funciones que enrutan los comandos SQL desde la aplicación cliente hacia el servidor de base de datos. Una de las APIs más comúnmente usada es ODBC (Open Data Base Connectivity) que permite tener acceso a cualquier base de datos que posea un controlador ODBC. La figura siguiente muestra un diagrama de bloques de este tipo de enfonque.
Fig 2.2 Base De Datos Cliente Servidor Finalmente, dentro de la base de datos, los datos se organizan en entidades. Cada entidad, a su vez, contiene una serie de atributos. Por ejemplo una entidad CLIENTE contiene los siguientes atributos : rut, nombre, apellido, teléfono, dirección. Una entidad puede ser vista como una tabla donde sus columnas son sus distintos atributos. Cada fila representa un registro dentro de la entidad respectiva. Para poder indexar un registro dentro de una entidad se utiliza una clave primaria que debe ser unívoca. Para poder asociar (relacionar) distintas entidades se utilizan claves foráneas. La figura siguiente representa esta situación.
Fig 2.3 Base De Datos Relacional |