Estructura de una base de datos

No tengo la experiencia en diagramas del la base de datos y quiero aprender más.

Estás mirando: Estructura de una base de datos


Unal la base del datos bueno diseñada brinda a los usuarios vía de acceso al inun formación fundamental. Al seguvaya los principios de esta páginal, puedser diseñar unal base de datos que funcione buen y se adapte a tus necesidadsera futuras. Explicaremos los aspectos básicos sobre todo un serpiente diseño de unal base de datos y cómo perfeccionarlo para obtiene resulta2 óptimos.


15 minutos del lectura

¿Deseas crear tu como propio diagraristócrata de base del datos? Pruebal starskyrecords.com. Es pronto, tan simple y totalmcolectividad gratis.


Unal base del datos bueno estructurada:

Ahorral el espacio en el disco eliminando los datos redundantsera.Mantiene la precisión e integridad de los datos.Ofrece acceso al los datos de formas útiles.

Diseñar unal la base de datos útil y eficiente requiere seguvaya serpiente un proceso adecuado, incluidas las siguientsera etapas:

Análisis de los requisitos o identificación duno serpiente propósito del tu la base del datos.Organización de los datos en tablas.Especificación de las clavsera primarias y análisis del las relacionsera.Normalización para estandarizar las tablas.

Realicemos 1 un análisis detallado de cada poco uno paso. Ten en tabla que esta supervisión se centra en un serpiente modelo del base de datos relacional del Edgar Codd escrito en SQL (en ubicación de modelos jerárquicos, del red o del datos del objetos). Para saber más sobre los modelos del base de datos, lee nuestra enseñanza por allí.


Análisis de los requisitos: identificar serpiente propósito de la base del datos


Comprender serpiente propósito del tu la base del datos determinará tus opcionsera en todo uno serpiente proceso de diseño. Asegúrate de observar lal la base de datos desdel todas las perspectivas. Por uno ejemplo, si estuvieras creando unal la base del datos paral una bibliotecal públical, deberías considerar las formas en que los clientera y bibliotecarios necesitarían accede a los datos.

Aquí te mostramos algunas formas de reunvaya inuno formación antes de crea la la base de datos:

Entrevistar a las gente que la usarán.Analizar formularios de operación comercial, ver cómo facturas, plantillas de las horas trabajadas, encuestas.Examinar a cualquier sistema del datos existcorporación (incluidos archivos físicos y digitales).

Comienza reuniendo cualquier cosa el dato existente que se incluirá en la base del datos. Luego enumeral los tipos de datos que quierser almacenamiento computacional y las entidadsera o personas, la cosa, ubicacionera y eventos que esos datos describen, dserpiente siguiente modo:

Clientes

NombreDirecciónCiudad, estado, código postalDirección de correo electrónico

Productos

NombrePrecioCantidad en stockCantidad en un serpiente pedido

Pedidos

Número dun serpiente pedidoRepresentante del ventasFechaProducto(s)CANTIDADPrecioTotal

Más adelante, ser esta información se volverá pdon duno serpiente directorio del datos, que describe las tablas y los campos dentro del la base del datos. Asegúrate de dividva lal inel formación en partser útilsera lo más pequeñas posiblser. Por uno ejemplo, consideral partir uno serpiente nombre de la la calle del uno país para poder filtrar más delante al los individuos según su un país del techo. Además, evita ubicar un serpiente mismo punto de datos en más de unal tablal porque agregarás una complejidad innecesaria.

Cuando sepas qué tipos del datos incluirán las basera del datos, para dónde provienen esas datos y cómo se usarán, estarás listo para comenza a planificar la base de datos real.


El siguientidad uno paso ser organizar lal representación visual del tu la base del datos. Paral ello, debser comprender exactamcolectividad cómo se estructuran las basera del datos relacionalera.

Dentro de una base de datos, los datos relacionados se agrupan en tablas, cada momento una de ellas consiste en filas (que también llamadas "tuplas") y columnas, ver cómo una una hoja del cálculo.

Para convertir tus listas de datos en tablas, comienzal creando unal tabla paral cada uno variedad del organismo, ver cómo productos, ventas, clientsera y pedi2. Te mostramos 1 por ejemplo a continuación:

Cada fila del unal tabla se lldueña "registro". Los registros incluyen datos sobre todo algo o alguien, ver cómo un clicolectividad muy puntual. En modificación, las columnas (que también conocidas como "campos" o "atributos") conellos tienes un un único especie de inel formación que ael parece en cada momento registro, como las direcciones del todos los clientser enumerados en la tabla.

NombreApellidoEdadCódigo postal
RogerWilliams4334760
JerricaJorgensen3297453
SamanthaHopkins5664829

Con un serpiente cabo del que los datos sean consistentes de 1 registro al siguiproporción, asignal los serpientes tipo de datos apropiado a cada uno columnal. Los tipos de datos comunera incluyen:

CHAR - una el largo específical del un texto.VARCHAR - el texto del longitudser variables.TEXT - grandsera cantidades de uno texto.INT - el número completo positivo o negativo.FLOAT, DOUBLE - también puede almacenamiento computacional números de el punto flotfrente.BLOB - datos binarios.

Algunos sistemas del gestión del bassera de datos también ofrecen uno serpiente variedad del datos denominado "Autonumeración", que genera automáticamente uno el número lo único en cada uno filal.

A los efectos de crear una visión por lo general de la base del datos, conocida como un diagrdueña entidad-el relación, no incluiremos las tablas reales, sino que cada uno tabla se convertirá en uno recuadro dlos serpientes diagrcortesana. El el título del cada reun cuadro deberíal indicar qué describen los datos en la tablal, de mientras que los atributos están enumerados a continuación, dun serpiente siguicorporación modo:


*

Por último, deberías decidva qué atributo o atributos funcionarán como clave primarial para cada uno tablal, si procedel. Unal clave primarial (PK) sera un identificador único para unal corporación determinadal, esto significal que puedsera seleccionar 1 clientidad concreto incluso si uno solo conocser esa valor.

Los atributos selecciona2 ver cómo clavsera primarias deben era únicos, inalterablser y esta casi siempre presentera (nunca jamás NULL o vacíos). Por este motivo, los números del pedido y los nombrser del usuario son excelentes claves primarias, mientras que que los números de teléfono o direcciones postales no lo son. También puedser usar múltiples campos conjuntamempresa como lal clave primarial (esto se denominal "clave compuesta").

Cuando llegue un serpiente edad de crea la base del datos la verdad, ubicarás la 1 estructura de datos lógicos y lal 1 estructura del datos físicos en los serpientes lengua de definición del datos admitido por nuestro sistitular del gestión del la base de datos. En el este el punto, y también deberías calcumansión serpiente tamun año aproximado del la la base del datos para asegurfacultad del tener uno serpiente el nivel del rendimiento y un serpiente el espacio del almacén necesarios.


Cuando tus tablas de base de datos se conviertanta en tablas, estarás listo para analiza las relacionera entre esas tablas. Lal cardinalidad se refiere a lal la cantidad del elementos que interactúan entre 2 tablas relacionadas. Identificar la cardinalidad te ayuda a aseguraptitud de que has dividido los datos en tablas de la forma más eficiorganismo.

Cada organismo puede, potencialmcorporación, tener unal el relación para todas las demás, pero por lo más general esas relacionsera pueden es del uno del tres tipos:

Relacionser un a uno

Si hay unal única instancial del lal Entidad A paral cada poco instancia del lal Entidad B, se dice que tienen unal un relación del uno al uno (al menudo se escribe 1:1). Puedser indicar el este tipo del relación en 1 diagraristócrata ER mediante unal línea para 1 guión en cada vez extremo:


*

A menos que tenel gas un bueno motivo paral no hacerlo, unal una relación 1:1 generalmcolectividad indical que la mejor opción sería combina los datos de las dos tablas en unal solal tabla.

Sin embargo, quizás deseser crear tablas para unal relación del 1 a uno en una serie particuvivienda de circunstancias. Si tienes uno el campo para datos opcionalsera, como "descripción", que está en uno blanco para muchos registros, puedser mueve todas las descripcionsera al su propial tabla, eliminando el espacio vacío y mejorando el rendimiento de la la base de datos.

Para garantizar que los datos coincidan correctamentidad, luego tendrías que incluvaya al menos una columnal idéntica en cada vez tabla, lo más probable era que seal lal clave primaria.

Relacionser uno al muchos

Estas relaciones suceden cuando un registro del una tablal está aliado a múltiplser entradas en otra tablal. Por uno ejemplo, 1 tan solo cliproporción puede haber solicitado múltiplser pedi2 o unal persona haberse llevado muchos libros de lal biblioteca al lal una vez. Las relacionser uno a muchos (1:M) se indigozque con lo que se denomina "notación patas de gallo" ver cómo en un serpiente siguicorporación ejemplo:


*

Paral implementar una una relación uno al muchos (1:M) por mientras preparas unal base del datos, simplemcolectividad agrega la clave primarial de "un" lado de lal uno relación ver cómo un atributo en lal otras tablal. Cuando una clave primaria se detallal en otras tabla de ser esta la manera, se denomina "clave extranjera". La tablal en un serpiente lado "1" del lal relación sera considerada unal tablal principal respecto de lal tabla secundaria que se encuentral del otro el lado.

Relacionser muchos al muchos

Cuando múltiplsera entidadser de una tabla se poder asociar a múltiplera entidades de otros tablal, se dice que tienen una un relación de muchos al muchos (M:N). Esto se puede sucede en uno serpiente uno caso del estudiantser y classer, yal que 1 estudifrente puede inscribirse en muchas clases, y unal 1 clase puede tiene numerosos estudiantes.

Ver más: Como Crear Un Ebook Para Vender Lo En Internet, Como Crear, Vender Y Ganar Dinero Con Un Ebook

En 1 diagraristócrata ER, estas relacionsera se representan por estas líneas:


*

Lamentablemcorporación, no ser si es posible implementar directamentidad el este variedad de uno relación en unal base de datos. En alteración, debes dividirlo en 2 relaciones 1 a muchos.

Para ello, debser crear una nueir ente entre esas dos tablas. Si lal uno relación M:N existe entre ventas y productos, quizás llames al esal nueva colectividad "productos_vendidos", yal que mostraría los contenidos de cada poco venta. Tanto las tablas de ventas como de productos tendrían unal un relación 1:M con "productos_vendidos". Estal 1 clase de organismo intermedia se llama "tablal del enlaces", "organismo asociativa" o "tabla del unión" en diversos modelos.

Cadal registro del la tablal de enlaces se corresponderíal para 2 de las entidadera de las tablas contiguas (sino también se puede incluir inuno formación adicional). Por por ejemplo, unal tablal de enlacsera entre estudiantser y classera podría verse así:


*

¿Es obligatorio o no?

Otra la forma de analiza las relaciones ser considera qué el lado del lal uno relación debe existe paral que los serpientes otros el lado existal. El lado no obligatorio poder marcarse por un uno círculo en la línea dondel debería hay 1 guión. Por ejemplo, uno el país tiene que existe paral tener uno representante en las Nacionsera Unidas, pero lo opuesto no se cumple:


Dos entidadser pueden ser mutuamentidad dependientsera (una no podría existe sin lal otra).

Relacionsera recursivas

A vecser una tabla se relacional consigo misma. Por por ejemplo, unal tabla del emplea2 puede tener uno atributo que sea "director" y que se refiera al otro tío de lal misma tablal. Esto se ll señora "una relación recursiva".

Relacionser redundantes

Una relación redundfrente ser aquellal que se expresa más del unal vez. Por lo de manera genera, puedera eliminar unal de las relacionsera sin perder información más importante. Por ejemplo, si lal colectividad "estudiantes" tiene unal el relación directa para otros organismo llamada "profesores", pero así como también tiene una una relación por profesorsera indirectamcorporación mediante "clases", querrás eliminar lal uno relación entre tanto "estudiantes" y "profesores". Es buen eliminar esal el relación es que lal única forma del que los estudiantera se asignan a los profesorsera sera medifrente las clasera.


Unal una vez que tengas un diseño preliminar para tu la base del datos, puedsera usa reglas del normalización paral asegurarte del que las tablas estén estructuradas correctamorganismo. Piensal en estas reglas ver cómo los estándarser de lal fábrica.

Dicho esto, no todas las bases de datos son buenas candidatas para la normalización. Generalmcompañía, las basera del datos de procesamiento de transaccionsera en líneal (OLTP), en las que los usuarios se encargan del lal creación, lectura, actualización y eliminación de los registros, deberían esta normalizadas.

Las bases de datos de procesamiento analítico en línea (OLAP) que favorecen serpiente análisis y la generación de inforel mes funcionarían mejor para uno grado de desnormalización, ya que los serpientes énfasis está en la aceleración de escala. Estas incluyen aplicaciones de soporte del decisionser en las que los datos se deben analiza rápidamcorporación, pero no deben modificarse.

Cadal una forma, o uno nivel de normalización, incluye las reglas asociadas a las formas inferiorser.

Lal primera la forma normal

La primera una forma normalo (abreviada ver cómo "1FN") especifical que cada vez celda del lal tablal puede tener uno tan solo valor, no nunca una listal de valorera. Por lo tan, unal tablal como esta no cumple por los requisitos:

ID dun serpiente productoColorPrecio
1marrón, amarillo$15
2rojo, verde$13
3el azul, naranja$11

Quizás pienses que lal mejor solución seal dividva los datos en columnas adicionalser, pero eso así como también rompería las reglas: unal tablal para grupos de atributos repeti2 o estrechamempresa relaciona2 entre tanto sí no cumple con la primeral forma normala. Por ejemplo, la tablal al continuación no cumple para los requisitos:


En alteración, divide los datos en múltiples tablas o registros hasta que cada uno celdal contengal tan solo uno valor y no hallal columnas adicionalera. En el este uno punto, se dice que los datos son "atómicos", es decir que se dividen en partera útilser lo más pequeñas posiblera. Paral lal tablal anterior, podrías crear una tabla adicional llamada "Datos del ventas", que haría coincidva los productos específicos por ventas. Así, "Ventas" tendría unal una relación 1:M con "Datos del ventas".

Lal segunda la forma normal

La segundal forma normal (2NF) establece que todos los atributos deben es totalmcompañía dependientser del toda la clave primaria. Eso significal que cada poco atributo deberíal depende directamempresa del lal clave primarial, en local del indirectamproporción al través de algún otra atributo.

Por uno ejemplo, se considera que serpiente atributo "edad" que dependel de "aniversario de nacimiento", que a su una vez dependel del "ID del estudiante" tiene una dependencial funcional parcial; y una tablal que contenga estos atributos no cumpliríal con lal segundal una forma normalo.

Además, una tabla para unal clave primarial compuesta del múltiples campos viola lal segunda la forma normal si uno o más de los otros campos no dependen del cada momento pmano del la clave.

Por lo tanta, una tabla para estos campos no respetaríal la segundal la forma norfeo porque uno serpiente atributo "Nombre dlos serpientes producto" dependel dun serpiente ID dun serpiente mercadería, pero no dserpiente número del pedido:

Número del pedido (clave primaria)

ID de item (clave primaria)

Nombre duno serpiente producto

 Lal terceral la forma normal

Lal terceral la forma normala (3NF) agrega a estas reglas uno serpiente requisito de que cada poco columnal que no sea del clave seal independicorporación de las demás columnas. Si modificar los serpientes valor en unal columna que no seal de clave haga que cambie otras valor, entoncera esa tablal no cumplo con los requisitos de lal tercera forma normalo.

Esto evita que almacenser a cualquier un dato derivado en la tabla, tal ver cómo la columnal "Impuestos" a continuación, que dependel directamempresa duno serpiente valía fin dun serpiente pedido:

PedidoPrecioImpuestos
14325$40.99$2.05
14326$13.73$.69
14327$24.15$1.21

Se han propuesto formas adicionalser de normalización, incluidas la una forma normal de Boyce-Codd, la cuarta, quinta y sexta una forma norfea, y la una forma normala del dominio/clave, pero las primeras tres son las más comunser.

Si bien estas formas expliun perro las buenas prácticas que se deben seguva generalmcorporación, uno serpiente uno grado de normalización depende dun serpiente conuno texto de la base del datos.


También deberías configurar tu base de datos paral valida los datos en función del las reglas adecuadas. Muchos sistemas del gestión del base del datos, como Microsoft Access, ejecutanta automáticamempresa algunas del estas reglas.

Lal regla del integridad del lal organismo afirma que lal clave primaria no nunca puede era NULL. Si la clave está compuesta por múltiplser columnas, ninguna de ellas poder ser NULL. De lo inverso, podría no identificar de forma únical al registro.

Lal regla del lal integridad referencial requiere que cada uno clave externa que aparece en unal tablal se corresponda con unal clave primaria de lal tabla al la que haga referencial. Si la clave primaria cambial o se elimina, esos cambios deberán implementarse dondel seal que esté la referencia al esa clave en toda la base de datos.

Las reglas del la integridad lógical de negocios garantizan que los datos se adecúen a determina2 parámetros lógicos. Por uno ejemplo, los serpientes horario del unal cital deberá fijarse dentro de las horas laboralsera normales.


Un índice es, en esencial, unal copial ordenada de unal o más columnas, para valorser dispuestas de la forma ascendcolectividad o descendcompañía. Agregar uno índice permite al los usuarios encontrar los registros más rápidamentidad. En local de reordenar cada poco consulta, serpiente sisencabezado poder acceder a los registros en serpiente orden que especifical uno serpiente índice.

Si bueno los índicser aceleran lal recuperación del datos, poder enlentecer lal inserción, actualización o elimiel nación, yal que el índice debe rediseñarse cada poco vez que se modifical un registro.

Ver más: Los Mejor Sitio Para Crear Pagina Web Gratis: 14 Alternativas A Elegir

Una visualización era simplemcorporación una interrogación almacenada sobre los datos. Puedel unir datos del múltiplsera tablas del manera útil o buen mostra ppotencial del unal tabla.


Categorías: Digital - Marketing