informatica:programacion:cursos:desarrollo_web_backend:diseno_base_datos
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| informatica:programacion:cursos:desarrollo_web_backend:diseno_base_datos [2024/11/16 14:59] – [Claves primarias, únicas, múltiples y foráneas] tempwin | informatica:programacion:cursos:desarrollo_web_backend:diseno_base_datos [2024/11/19 12:11] (actual) – [Diseño de bases de datos] tempwin | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| ====== Diseño de bases de datos ====== | ====== Diseño de bases de datos ====== | ||
| - | <WRAP center round info 60%> | + | <WRAP center round box 80%> |
| Módulo perteneciente al curso [[informatica: | Módulo perteneciente al curso [[informatica: | ||
| </ | </ | ||
| Línea 81: | Línea 81: | ||
| ); | ); | ||
| </ | </ | ||
| + | |||
| + | ===== Relaciones entre tablas ===== | ||
| + | |||
| + | Las relaciones entre tablas son una parte fundamental del diseño de bases de datos relacionales. Una relación se establece entre dos tablas cuando existe una conexión lógica entre los datos almacenados en ellas. | ||
| + | |||
| + | En este punto, vamos a ver las tres relaciones más comunes entre tablas: uno a muchos, uno a uno y muchos a muchos. | ||
| + | |||
| + | ==== Relación uno a muchos ==== | ||
| + | |||
| + | Un registro de una tabla se relaciona con muchos registros de otra tabla. | ||
| + | |||
| + | Por ejemplo, una tabla de " | ||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | IMAAAAAAAAAAAAAAAAAAAAGEN | ||
| + | </ | ||
| + | |||
| + | Códigos SQL del ejemplo: | ||
| + | |||
| + | <code sql> | ||
| + | CREATE TABLE Clientes ( | ||
| + | id_cliente INT PRIMARY KEY, | ||
| + | nombre VARCHAR(50) | ||
| + | ); | ||
| + | |||
| + | CREATE TABLE Pedidos ( | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | ); | ||
| + | </ | ||
| + | |||
| + | ==== Relación uno a uno ==== | ||
| + | |||
| + | Un registro de una tabla se relaciona con un solo registro de otra tabla. | ||
| + | |||
| + | Por ejemplo, una tabla de " | ||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | IMAAAAAAAAAAAAAAAAAAAAGEN | ||
| + | </ | ||
| + | |||
| + | Códigos SQL del ejemplo: | ||
| + | |||
| + | <code sql> | ||
| + | CREATE TABLE Empleados ( | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | Detalles_Empleados(id_detalles_empleado) | ||
| + | ); | ||
| + | |||
| + | CREATE TABLE Detalles_Empleados ( | ||
| + | | ||
| + | | ||
| + | | ||
| + | ); | ||
| + | </ | ||
| + | |||
| + | ==== Relación muchos a muchos ==== | ||
| + | |||
| + | Muchos registros de una tabla se relacionan con muchos registros de otra tabla. | ||
| + | |||
| + | Por ejemplo, una tabla de " | ||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | IMAAAAAAAAAAAAAAAAAAAAGEN | ||
| + | </ | ||
| + | |||
| + | Códigos SQL del ejemplo: | ||
| + | |||
| + | <code sql> | ||
| + | CREATE TABLE Estudiantes ( | ||
| + | | ||
| + | | ||
| + | ); | ||
| + | |||
| + | CREATE TABLE Cursos ( | ||
| + | | ||
| + | | ||
| + | ); | ||
| + | |||
| + | CREATE TABLE Inscripciones ( | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | Estudiantes(id_estudiante), | ||
| + | | ||
| + | ); | ||
| + | </ | ||
| + | |||
| + | ===== Modelado de base de datos utilizando draw.io ===== | ||
| + | |||
| + | A continuación, | ||
| + | |||
| + | Para empezar, lo primero que debes hacer es acceder a la [[https:// | ||
| + | |||
| + | En diagrams, puedes crear formas y objetos personalizados para representar tablas, relaciones y otros elementos de tu base de datos. | ||
| + | |||
| + | Además, también puedes utilizar diferentes estilos y colores para hacer que tu diagrama sea más fácil de entender. | ||
| + | |||
| + | Para crear una tabla, simplemente arrastra y suelta la forma de tabla en tu lienzo. Luego, | ||
| + | |||
| + | Para representar las relaciones entre tablas, puedes utilizar las flechas de conexión y las etiquetas para indicar el tipo de relación (uno a uno, uno a muchos, muchos a muchos, etc.). También puedes personalizar la apariencia de las flechas y las etiquetas para que se ajusten a tu diseño. | ||
| + | |||
| + | Una vez que hayas terminado de crear tu diagrama, puedes exportarlo en diferentes formatos (como PNG, PDF o SVG) para compartirlo con otros usuarios o para utilizarlo en tu proyecto. | ||
| + | |||
| + | ===== Creación del diagrama entidad/ | ||
| + | |||
| + | En esta sección del curso se aprenderá cómo crear un diagrama entidad/ | ||
| + | |||
| + | El diagrama ER es una representación gráfica de las entidades, relaciones y atributos que conforman una base de datos relacional. | ||
| + | |||
| + | Para crear un diagrama ER es importante seguir estos pasos: | ||
| + | |||
| + | * **Identificar las entidades**: | ||
| + | * **Identificar las relaciones**: | ||
| + | * **Identificar los atributos**: | ||
| + | |||
| + | Una vez que se han identificado las entidades, relaciones y atributos, se puede comenzar a crear el diagrama ER. Existen diferentes herramientas para crear diagramas ER, como diagrams.net. | ||
| + | |||
| + | En el diagrama ER, las entidades se representan como rectángulos y las relaciones como líneas que conectan los rectángulos. Los atributos se representan dentro de los rectángulos. | ||
| + | |||
| + | Es importante tener en cuenta que existen diferentes tipos de relaciones, como "uno a muchos", | ||
| + | |||
| + | Para crear un diagrama ER efectivo, es necesario tener un conocimiento profundo de la estructura y los datos de la base de datos, así como una comprensión clara de las necesidades y requerimientos del proyecto. | ||
| + | |||
| + | A continuación, | ||
| + | |||
| + | <WRAP center round todo 60%> | ||
| + | VIDEOOOOOOOOOOOOOOOOOOOOOOOO | ||
| + | </ | ||
| + | |||
| + | En este ejemplo, se han identificado dos entidades: " | ||
| + | |||
| + | ===== Integridad referencial y el diagrama entidad/ | ||
| + | |||
| + | La integridad referencial es un concepto clave en la construcción de bases de datos relacionales. Consiste en mantener la consistencia de los datos entre las tablas de la base de datos, mediante la utilización de claves foráneas. | ||
| + | |||
| + | En un diagrama entidad/ | ||
| + | |||
| + | La integridad referencial se puede definir mediante la utilización de cláusulas como ONDELETE o ON UPDATE, que especifican qué hacer cuando se intenta eliminar o actualiza runa fila en una tabla que está referenciada por una clave foránea en otra tabla. | ||
| + | |||
| + | Por ejemplo, si se define '' | ||
| + | |||
| + | ===== Teoría relacional: las cuatro formas normales del diseño de bases de datos ===== | ||
| + | |||
| + | La teoría relacional es un concepto fundamental en el diseño y construcción de bases de datos. Una base de datos bien diseñada debe seguir ciertas normas para garantizar su eficiencia, integridad y consistencia. | ||
| + | |||
| + | Las cuatro formas normales del diseño de bases de datos son una serie de reglas que permiten estructurar una base de datos de manera óptima. | ||
| + | |||
| + | ==== La primera forma normal (1FN) ==== | ||
| + | |||
| + | La primera forma normal (1FN) establece que todas las tablas de la base de datos deben tener una clave primaria única y que cada columna debe ser atómica, es decir, no se permiten valores repetidos o combinados. | ||
| + | |||
| + | Por ejemplo, en una tabla de empleados, la información de teléfono y dirección debe estar en columnas separadas, no en una sola columna. | ||
| + | |||
| + | ==== La segunda forma normal (2FN) ==== | ||
| + | |||
| + | La segunda forma normal (2FN) se refiere a la eliminación de redundancias y establece que cada columna debe depender solo de la clave primaria de la tabla. | ||
| + | |||
| + | Por ejemplo, en una tabla de pedidos, la fecha del pedido debe estar en una tabla separada de los detalles del pedido, para evitar la redundancia de información. | ||
| + | |||
| + | ==== La tercera forma normal (3FN) ==== | ||
| + | |||
| + | La tercera forma normal (3FN) se enfoca en la eliminación de dependencias transitivas, | ||
| + | |||
| + | Por ejemplo, en una tabla de empleados, si la dirección de un empleado depende de su departamento, | ||
| + | |||
| + | ==== La cuarta forma normal (4FN) ==== | ||
| + | |||
| + | Finalmente, la cuarta forma normal (4FN) se centra en la eliminación de dependencias multivaluadas. Una dependencia multivaluada ocurre cuando una tabla tiene más de una clave y las dependencias entre ellas no están claras. | ||
| + | |||
| + | Por ejemplo, en una tabla de ventas, si un producto puede estar en varias categorías, | ||
| + | |||
| ===== Recursos ===== | ===== Recursos ===== | ||
| Línea 89: | Línea 267: | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
informatica/programacion/cursos/desarrollo_web_backend/diseno_base_datos.1731765598.txt.gz · Última modificación: por tempwin
