Aprende SQL: aprendersql.com es un curso guiado gratuito de SQL. Este curso de sql para principiantes esta pensado para que aprendas este lenguaje de consulta de bases de datos desde cero paso a paso y con ejemplos. Tambien puedes consultar nuestro manual de referencia.

Curso SQL Referencias Comunidad
← Lecciones

Leccion 2 - Que es una base de datos?

Tiempo estimado de lectura: 4 minutos

Que es una base de datos?

Una base de datos es un sistema desarrollado mediante software, que permite el almacenamiento, manipulacion y recuperacion de datos.

Tipo de bases de datos

Hay que diferenciar entre bases de datos SQL y bases de datos NoSQL. Este curso trata sobre las bases de datos SQL.

Bases de datos SQL

Son aquellas en el que la informacion es estructurada, esto es, en formato de tablas con columnas y filas. Un ejemplo claro de tabla puede ser una hoja de calculo de excel. Una base de datos SQL, tambien denominada comunmente como base de datos relacional, debe su nombre a la posibilidad de relacionar las diferentes tablas que la componen.

ejemplo bbdd relacional

Bases de datos NoSQL

Las bases de datos NoSQL se componen de informacion que no sigue un patron de columnas y filas concretos, por ejemplo, podria ser un sistema de un conjunto de archivos tipo clave-valor. El tipico ejemplo de sistema de base de datos NoSQL es MongoDB. La forma comun de almacenar la informacion en una base de datos NoSQL es mediante archivos tipo Json.

ejemplo documento NoSQL

Tablas

Una tabla en una base de datos se suele componen de filas y columnas (tambien llamadas campos) igual que podriamos tener en las hojas de calculo. Cada tabla en una base de datos representa una entidad, como pueden ser clientes, productos o ventas.

ejemplo esquema tabla

Columnas

Una columna en una tabla de base de datos contiene la informacion de un atributo de la entidad que representa la tabla. Una columna tiene asociado un tipo de datos, como puede ser entero, decimal, cadena, binario o de tipo fecha. Por ejemplo una tabla en una base de datos que representa la entidad Empleados puede tener campos tales como Nombre, Fecha de incorporacion, Direccion, Departamento, Responsable, Salario, etc.

Filas

Las filas de una tabla de base de datos, tambien llamados comunmente registros, representan un evento o instanscias especificas de una entidad. Por ejemplo en una tabla una fila puede representar un cliente con las siguientes columnas Nombre, Direccion, Identificador de cliente, Email, etc.

Tipos de relaciones entre tablas

Las relaciones en una base de datos son las conexiones entre las diferentes tablas que pueden componer la base de datos. Las relaciones nos permiten referir y combinar los datos entre las tablas. La relacion entre tablas tambien se denomina cardinalidad.

Las relaciones entre tablas nos permiten organizar la informacion de manera coherente.

Existen 3 tipos principales de relaciones entre tablas:

  • Uno a uno (1:1): Una relacion uno a uno entre dos tablas significa que cada fila o registro de la primera tabla se relaciona con un unico registro de la segunda tabla. Esto es, por ejemplo, una tabla Empleados donde podemos tener el nombre del empleados y los apellidos en dos columnas, se puede relacionar con otro tabla llamada direcciones donde cada empleado tendria una sola direccion en la segunda tabla direcciones, en el caso de que cada empleado solo tenga una direccion. Este tipo de relacion en una diagrama entidad relacion se representa por 1:1.

  • Uno a muchos (1:n): Este tipo de relacion se da cuando un registro de una tabla puede estar relacionado con uno o mas registros de otra tabla, por ejemplo, cada registro de una tabla llamada clientes puede relacionarse con otra tabla llamada pedidos donde cada cliente puede tener uno o mas pedidos.

  • Muchos a muchos (n:n): Este tipo de relacion se da cuando una tabla que contiene diferentes registros que relaciona tambien con diferentes registros de otra tabla. Por ejemplo, una tabla llamada estudiantes puede relacionar de manera muchos a muchos con otra tabla llamada asignaturas.

Primary Keys y Foreign Keys

Igual que hemos hablado de los tipos de relaciones entre tablas de una base de datos, debemos mencionar tambien lo que se denominan Primary keys y Foreign Keys. Estas son claves en una tabla, que nos permitiran tambien poder conocer como relacionar las tablas entre si.

Que es una Primary Key?

Una Primary Key (PK), o clave primaria, es una columna donde cada valor de los diferentes registros de las filas es unico para esa columna. Por ejemplo una tabla de clientes con una columna IdCliente puede ser el identificador de cada cliente dentro de la tabla. Una tabla por norma suele tener solo una primary key, si bien puede haber primary keys compuestas de varios atributos dados por otras columnas de la tabla.

Que es una Foreign Key?

Una Foreign Key (FK), o clave foranea, es una clave externa hacia otra tabla. Por ejemplo, la misma tabla clientes que mencionamos arriba puede contener una clave foranea hacia otra tabla, en este caso podriamos imaginar que esta columna que apunta a otra tabla se trata del tipo de cliente, esta columna puede contener 3 posibles valores, Empresa pequeña, Empresa Mediana y Empresa Grande, donde los clientes de la tabla seran de estos 3 tipos, y por contra tendremos la otra tabla que puede ser TipoDeCliente donde encontraremos la columna Tipo de Cliente con los 3 registros para cada valor de este atributo, esto es, un registro para Empresa Pequeña, otro registro para Empresa Mediana y un tercer registro para Empresa Grande. Para el ejemplo que estamos hablando la relacion entre las tablas TipoDeCliente y Cliente la relacion seria de 1 a muchos (1:n), dado que en la primera tabla tendremos un registro unico para cada tipo de cliente, mientras que en la tabla Clientes podemos tener muchos clientes pero cada uno pudiendo ser Empresa Pequeña, Empresa Mediana o Empresa Grande.