Por Viktor Ml. Justo Vasquez
Un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.
Mas o menos, desde el punto de vista informático una base de datos es una colección de información organizada de forma que un programa de ordenador pueda seleccionar rápidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos electrónico.
Un sistema de bases de datos, es una manera eficiente, confiable, conveniente y segura almacenar y acceder cantidades masivas de información persistente de múltiples usuarios.
En el modelo relacional una base de datos esta diseñada de manera que todos los datos son almacenados en relaciones, y como cada relación es un conjunto de datos. La información puede ser recuperada o almacenada por medio de consultas que ofrecen una amplia flexibilidad y poder para administrar la información.
Este modelo considera la base de datos como una colección de relaciones. De manera simple, una relación representa una tabla que no es más que un conjunto de filas, cada fila es un conjunto de campos y cada campo representa un valor que interpretado describe el mundo real.
El esquema define la estructura de la base de datos, la manera en como se relacionas las tablas dentro de estas. Y que tipos de datos voy a utilizar para representar cada información.
Por ejemplo, si guardo información de estudiantes puedo tener ID como un entero auto-incrementable o un hash único, Indice si un string o un float, ect...
llave (key): un campo (o combinación de campos) donde cada valor (o combinación de valores) es único.
NULL : valor que toma un campo cuando es desconocido o no asignado.
Aplicando a una universidad.
Un joven con cédula aplicando a una universidad, le preguntan el pasado académico y algunos hobbies.
Empezar por una GRAN relación e ir descomponiendo en partes mas pequeñas
Terminamos con una db normalizada en Boyce-Codd
Aplica(Cedula, nombreEstudiante, Universidad)
dado que Cedula → NombreEstudiante
entonces Cedula es Llave.
Persona(FechaDeNacimiento, Edad, Conduce)
Si FechaDeNacimiento → Edad y
Edad → Conduce
entonces
FechaDeNacimiento → Conduce
C será un dato simple (dato no primario), B,será un otro dato simple (dato no primario), A, es la llave primaria (PK). Decimos que C dependerá de B y B dependerá funcionalmente de A.
Curso(CursoID, Libro, Profesor)
Como cada profesor y cada libro son independientes del otro la tabla tiene dependencia multivalor, si fuéramos a agregar un libro a la clase deberíamos, en ese caso, agregar una linea por cada profesor.
Por ende
CursoID -->> Libro & CursoID -->> Profesor
1NF: Valores atómicos
2NF: Un solo primary key
3NF: Nada excepto la clave
BCNF: No a las dependencias funcionales
4NF: no la las dependencias multi valores