El modelo entidad relación incluye tres elementos básicos:
Entidad
Una entidad es una “cosa” u “objeto” del mundo real que es distinguible de todos los
demás objetos, y acerca del cual se capturan, almacenan o procesan datos.
Las entidades pueden ser concretas (físicas): personas,automóvil,libro,casa.
Las entidades pueden ser abstractas (conceptual)(objetos que existen, pero de
forma teórica, lógica o conceptual):asignatura, préstamos,experiencia laboral.
Ejemplo de nombres de entidades pueden ser: Alumno, Empleado, Artículo,Docente
Una entidad tiene un conjunto de propiedades, y los valores para algún conjunto de
propiedades puede identificar una entidad de forma unívoca, por ejemplo: el DUI:
12345678-9, identifica unívocamente una persona particular en nuestro país.
Conjunto de entidades
El conjunto de todas las personas que son clientes en un banco dado, por ejemplo, se
pueden definir como el conjunto de entidades cliente.
Análogamente, el conjunto de entidades préstamo podría representar el conjunto de todos
los préstamos concedidos por un banco particular.
El conjunto de entidades estudiantes podría representar el conjunto de todos los estudiantes
de la Facultad Multidisciplinaria de Occidente.
El conjunto de entidades docentes podría representar el conjunto de todos los docentes de
la Facultad Multidisciplinaria de Occidente.
Las entidades individuales que constituyen un conjunto se llaman la extensión del conjunto
de entidades. Así, todos los clientes de un banco son la extensión del conjunto de entidades
cliente.
Una entidad se representa mediante un conjunto de atributos.
Atributos
Un atributo es una propiedad o características que describe a una entidad.
Posibles atributos del conjunto de entidades cliente son id-cliente, nombre-cliente, calle-
cliente y ciudad-cliente.
Entidad carro: color, vin, tipo (el color sirve para describir al automóvil por tanto color es un
atributo de la entidad carro)
Entidad alumno: carnet, nombre, apellido, dirección.
Recuerden que una entidad puede llegar a tener varios atributos y que cada atributo puede
tener varios registros.
Relación
Es decir como las entidades interactúan entre sí. Piensa en las relaciones como si
fueran verbos.
Existen la relación 1:1 = Es cuando una entidad se relaciona exclusivamente con
otra entidad (un empleado pertenece a un departamento)
Existen la relación 1:N o N:1 =Es cuando una entidad se relaciona con otras
entidades ( profesor (1) IMPARTE (n) materias ) ( alumno (1) CURSA (n) materias )
Existen la relación N:N =Es cuando varias entidades se relacionan con varias
entidades (Un proveedor puede ser distribuido de uno o más artículos y un artículo
puede ser distribuido por uno o más proveedores)
Tabla
En las tablas, los datos se organizan con arreglo a un formato de filas y columnas,
similar al de una hoja de cálculo.
Cada fila representa un registro único y cada columna un campo dentro del registro.
—---------------------------------------------- DIBUJO
—-----------------------------------------------------------
Registros
DOCENTE
Id_Docente Nombre Apellido Carrera
399 Juan Pérez Ingeniero Industrial
400 Rocio Morales Ingeniera en Sistemas Informática
Campos o Columnas
Un registro, en el caso de la tabla Clientes, estará formado por el identificador de
cliente, el nombre del cliente, y el domicilio del cliente.
Un registro, en el caso de la tabla Estudiante, estará formado por un
id_estudiante(carnet),nombre estudiante,apellido estudiante,dirección
estudiante.
Tipo de dato
DOCENTE
Id_Docente Nombre Apellido Carrera
399 Juan Pérez Ingeniero Industrial
400 Rocio Morales Ingeniera en Sistemas Informática
MySQL SQL Server
Numéricos (SMALLINT, Numérico (SMALLINT, INTEGER,
MEDIUMINT, INT O INTEGER) DECIMAL)
Clave primaria
Una base de datos relacional está diseñada para imponer la exclusividad de las
claves primarias permitiendo que haya sólo una fila con un valor de clave primaria
específico en una tabla.
DOCENTE
Id_Docente Nombre Apellido Carrera
399 Juan Pérez Ingeniero Industrial
400 Rocio Morales Ingeniera en Sistemas Informática
DOCENTE
Id_Doc DUI Nombre Apellido Carrera
ente
399 01234567-8 Juan Pérez Ingeniero Industrial
400 87654321-0 Blanca Flores Ingeniera en Sistemas
Informática
Clave foránea
Para poder añadir una fila con un valor de clave foránea específico, debe existir una
fila en la tabla relacionada con el mismo valor de clave primaria.
DOCENTE
Id_Docente Nombre Apellido Carrera
399 Juan Pérez Doctorado en Medicina
400 Rocio Morales Ingeniera en Sistemas Informática
DEPARTAMENTO
Id_Departamento N_Departamento
001 Medicina
002 Ingeniería y
Arquitectura
DOCENTE
Id_Docente Nombre Apellido Carrera Id_Departamento
399 Juan Pérez Doctorado en 001
Medicina
400 Blanca Flores Ingeniera en 002
Sistemas
Informática
—------------------------------------------------------------------------------------------------------------------------
-
Formularios
Por ejemplo, puede que algunos usuarios necesiten ver sólo algunos de los campos de una
tabla que contiene numerosos campos.
Consulta Query
El lenguaje de consultas a base de datos más utilizado es el SQL.
Informe
Determina qué campos y tablas contienen la información que necesitas, y utiliza el
asistente de informes o la ventana de diseño de informes para crearlos.
Macro
Las macros se utilizan principalmente para eliminar la necesidad de repetir los pasos de
aquellas tareas que realizas una y otra vez.
Conjunto de acciones que se graban para automatizar tareas repetitivas.
Cuando creas un macro, Excel grabará todos los clics del ratón o las pulsaciones de las
teclas que realices durante el proceso de creación, y es esto lo que luego repetirá.
Crear reportes automáticos.
Dar formatos rápidos a informes : Los reportes automáticos deben incluir un formato, un
diseño de portada, logo, colores, tipos de letra y más. Con las macros de Excel también es
posible realizar estas tediosas actividades en cuestión de segundos. Bastará con crear el
diseño que deseas una sola vez, y te olvidas de volver a dar ese formato a tus informes.
Procedimiento Almacenado
Un procedimiento almacenado es un conjunto de instrucciones SQL, almacenadas
en nuestro servidor de BD que son ejecutadas a petición de los usuarios
(programación del lado del servidor)
Trigger
Dicho de otra manera, el trigger desencadena determinadas acciones de forma
automática en las tablas de la base de datos cuando se insertan, modifican o se
eliminan registros.
Los trigger se ejecuta automáticamente
Ejemplo
T_venta (id, fecha, total)
id=1 fecha=25/02/2025 total=$55
T_concepto (id,id_venta, descripcion,precio)
id=1 idVenta=1 descripción=papitas precio=$10
id=2 idVenta=1 descripción=soda precio=$45
Hago una modificación en la tabla T_concepto donde se cambio el precio de las
papitas por lo tanto en la tabla T_ventas se tiene que actualizar el total también
para eso usamos el trigger, cuando hacemos esa modificación se tiene que
modificar el total de la tabla T_venta
Después de la modificación:
T_concepto (id,id_venta, descripcion,precio)
id=1 idVenta=1 descripción=papitas precio=$15
id=2 idVenta=1 descripción=soda precio=$45
T_venta (id, fecha, total)
id=1 fecha=25/02/2025 total=$60
Índice
Solamente establece una nueva estructura de datos que hace referencia a la tabla.
De hecho, un índice de base de datos se parece mucho a un índice de un libro:
ocupa su propio espacio, es redundante y hace referencia a la información actual
almacenada en otro lugar.
Cuando una tabla no tiene índice sql hace una búsqueda completa de la tabla para
encontrar las filas que cumplen con el criterio de búsqueda en una consulta , es decir sql
tiene que leer cada fila de la tabla dicho proceso puede ser lento si ya nos referimos a tablas
grandes.
En el caso que el primer registro cumple con la condición siempre tiene que hacer una
lectura de toda la tabla. ( mejorar el rendimiento de una consulta).
Cuando creamos un índice se crea una copia de los valores de la columnas indexadas y se
mantiene ordenada esto permite al motor de bd encontrar rápidamente las filas que
coinciden con los criterios de búsqueda mucho más eficiente
Lo que pasa es que se busca en el índice la condición del WHERE que pusiste y al encontrar
el match se va directo al espacio en memoria y trae la información, sin necesidad de recoger
la otra tabla buscando el match. Esto hace tan poderoso a los índices.