Modelos Entidad Relación

Los Modelos Entidad-Relación nos sirven para saber cuales son las entidades(tablas) que utilizaremos en cada sistema y las relaciones que existen entre ellas.

El siguiente modelo es el «Modelo Lógico», en el cual se crean tablas, con sus claves primarias correspondientes y las relaciones que existen entre cada tabla, ya sea uno a uno , uno a muchos, muchos a muchos.

Imagen

 

 

Luego de tener realizado el modelo Lógico , el siguiente paso es crear el Modelo Físico, en este podemos ver las tablas con sus relaciones y con las claves primarias y foráneas respectivamente.

Imagen

MY SQL

En esta sección explicaremos como poder trabajar en My SQL , paso a paso para generar tablas:

Primero debemos ingresar a http://localhost:81/phpMyAdmin/ y Crear una Base de Datos a la cual se le asigna un nombre y luego se le da click a Crear

Una vez creada la base de datos el siguiente paso es realizar la creación de las tablas con la cantidad de campos respectivamente por cada tabla

Luego les designamos nombres a cada campo(atributo), el tipo de dato , la longitud/valor algún dato extra como por ejemplo al atributo que sea primario dejarlo auto-increment para que automáticamente vaya aumentando.

Una vez realizado esto, le damos a grabar.

Obtenemos como resultado lo siguiente en donde nos muestra la consulta en SQL de la tabla creada :

Luego, le damos clic a nuestra base de datos:ejemplo y hacemos la creación de nuestra segunda tabla con los campos correspondientes al igual que se hizo en la creación de la primera tabla

Al haber una relación uno a muchos entre las tablas creadas se le designa en este caso a la segunda tabla creada una clave foránea que era la clave primaria en la primera tabla seleccionando la opción Indice/Index y le damos a grabar.

En esta tabla en la consulta SQL podemos ver que creó una PRIMARY KEY que es la clave primaria y una INDEX que es la clave foránea.

Una vez creadas ambas tablas continuamos con la inserción de datos, debemos seleccionar la tabla a la que le ingresaremos datos/valores .

El ingreso de los datos puede ser de modo gráfico o modo consola. Por modo Gráfico sería del siguiente modo:

Y del modo consola, el siguiente:

Si elegimos el modo gráfico es más rápido y fácil para ingresar datos ,esto porque solo le damos los valores/datos que nosotros queremos .En cambio, si elegimos el modo consola debemos tener claro los tipos de datos que seleccionamos, si tenemos tipos de datos en donde ingresaremos textos o fechas debemos ingresarlos entre comillas simples, si son solo datos enteros los ingresamos sin ningún carácter extra al dato ingresado.

Luego, de haber elegido uno de los dos modos le damos a continuar.Podemos ingresar cuantos datos queramos, el modo para ver que datos hemos ingresado es ir a Examinar y revisamos todos los datos que ya ingresamos y si necesitamos modificar algo , lo podemos hacer..

Para continuar, seleccionamos la siguiente tabla «empleado» y realizamos el mismo paso anterior para ingresarle datos a la tabla, quedando la tabla con datos ingresados del siguiente modo:

SELECT nombre_emp FROM EMPLEADO WHERE fecha_nac BETWEEN ‘1989-02-25’ AND ‘2012-12-31’

Esta consulta me permite mostrar los nombres de los empleados que su fecha de nacimiento esta entre el 25-02-2012 y el 31-12-2012

select nombre_emp from EMPLEADO order by nombre_emp

Esta consulta me ordena los nombres de los empleados en el orden alfabéticos.

Luego, después de haber ingresado datos en las tablas que creamos, el siguiente paso es hacer consultas sobre los datos de cada tabla, las consultas pueden ser de una sola tabla o de ambas, estas se llaman consultas anidadas.

AHORA, A CONTINUACIÓN LES DEJARÉ ALGUNOS EJEMPLOS DE CONSULTAS…

  • SELECT SUM(n_empleados) FROM departamento;

  • Este select sirve para que nos muestre la suma de la cantidad de n_empleados desde la tabla departamento.

  1. SELECT COUNT(DISTINCT nombre) FROM DEPARTAMENTO;

    Este select me permite contar la cantidad de departamentos que existen y que tengo guardado en la tabla DEPARTAMENTO.

SELECT COUNT( * ) FROM departamento WHERE `n_empleados` =27

Esta consulta me permite contar todos los datos que hay ingresados donde el numero de los empleados sea igual a 27

select COUNT(*)from DEPARTAMENTO where nombre=’Base de Datos’

En esta consulta estoy pidiendo que cuente todos los datos que existan en la tabla departamento donde el nombre de este sea Base de Datos, y como pueden ver en la imagen me muestra un 1 ya que solo un departamento se llama así.

Otro tipo de consultas son las consultas anidadas, en donde el orden para hacerlo es primero seleccionar los campos que quiero mostrar en donde debe ir el nombretabla.nombre del campo, luego desde donde quiero seleccionarla dejando los nombres de ambas tablas relacionadas y finalmente la condición donde la clave primaria sea igual a la clave foránea de la segunda tabla tal como se muestra a continuación :

SELECT  departamento.n_empleados, departamento.nombre, departamento.fecha_creac, departamento.id_dpto, empleado.nombre_emp, empleado.apellido_emp,empleado.salario from departamento,empleado where departamento.id_dpto=empleado.id_dpto

Esta consulta permite mostrar el numero de empleados que tiene cada departamento, el nombre de cada departamento, fecha de creación y el id de cada departamento respectivo, el nombre y apellido de los empleados de la tabla y el salario. 

¿Qué es un Lenguaje SQL?

  • Un lenguaje SQL es un lenguaje estandar de consultas de datos

  • SQL se clasifica en 3 tipos:


    • DDL:

      • Permite la creación de estructuras. Admite sentencias como Create, Drop, Alter.


    • DML:

      • Permite la inserción, actualización, consultación, modificación y eliminación


    • DCL:

      • Controla el acceso de los usuarios hacia los datos. Cuenta con comandos como :

        • Grant:

          • Da permiso a uno o varios usuarios o roles para tareas determinadas

        • Revoke:

          • Permite eliminar permisos que previamente se han concedido con GRANT

Tipos de Sistema de Información Administrativa

Sistemas de Información Administrativa 

 Es el conjunto de componentes interrelacionados que operan en conjunto para capturar, procesar, almacenar y distribuir información que apoye la toma de desiciones ,la coordinación, el control y análisis de una organización.

  • Objetivos de un SIA son:

    • Proporcionar información que sirva de apoyo al proceso de toma de decisiones.

    • Lograr ventajas competitivas a través de su implantación y uso.

    • Automatización de procesos operativos

Algunas caracteristicas que posee un S.I.A. :

  • Comprensibilidad: Debe ser elaborado en forma correcta y contener términos y símbolos adecuados para que el receptor lo interprete debidamente.
  •  Confiabilidad: es necesario quesea preciso, congruente con el hecho, real y comprobable desde la fuente y todo el proceso de transmisión.
  •  Relevancia: debe ser esencial para el área de responsabilidad de actuación del administrador.
  •  Integridad: Tiene que contener los hechos que el administradornecesita para tomar decisiones y resolver problemas.
  •  Concisión: debe omitir materias ajenas al asunto, resumir la información clave y dejar a un lado los detalles y los datos que no tienen relación con el sistema de información administrativa.
  •  Oportunidad: Tiene que estar disponible en el momento en que sea necesaria para la actuación del administrador, pues anticipada podría ser olvidada o mal usada, y retrasada no tiene valor.
  •  Calidad: razonable, para su procesamiento y es el grado de precisión con el cual la información retrata la realidad, a un costo distribución.

Ahora les dejo un prezi con un resumen de un nivel de software, definiendo DATA WAREHOUSE, ERP,CRM,BUSINESS INTELLIGENCE.

Como pueden observar en la siguiente imagen existen 4 niveles de sistemas: El nivel estratégico , el nivel Administrativo, el nivel Operacional y el nivel de conocimiento.

Como pueden ver a continuación les dejo un ejemplo de como funciona un S.I.A

Finalmente, para ya ir terminando con este tema les dejo un vídeo resumen…

¿Qué es una Cardinalidad?

La cardinalidad se divide en cuatro tipos que son los mas conocidos, estos son :

  • UNO A UNO OBLIGATORIO
    • En este puede existir una sola relación entre las entidades, por ej un RUT puede pertenecer a una sola Persona y una Persona tiene un solo RUT.
  • UNO A MUCHOS OPCIONAL
    • Para explicar este tipo de relación utilizaremos el ejemplo de una madre y sus hijos, como todos sabemos un hijo puede tener una UNICA madre pero una madre puede tener UNO O VARIOS hijos.
  • MUCHOS A MUCHOS
    • En este caso usaremos el ejemplo de una asignatura, Una asignatura puede pertenecer a UNA O VARIAS carreras y una carrera puede tener UNA O VARIAS asignaturas.
  • UNO A UNO OPCIONAL
    • Para esta ultima opción les dejaré como explicación el siguiente ejemplo: Un paciente puede estar asignado a un cuarto o a ninguno.  En un cuarto puede haber cero o un paciente.

Ahora les dejo las representaciones de cada una de las cardinalidades en el orden en que se mencionaron anteriormente 

¿Qué es una Relación?

Una relación es una Asociación entre entidades. Es un Elemento que permite la Asociación entre los datos en sí.

  • Existen distintos tipos de Relaciones, entre los cuales podemos encontrar:
    • Relaciones Binarias
      • Son las relaciones típicas. Se trata de relaciones que asocian dos entidades.
  • Relaciones Ternarias
    • Relacionan tres entidades. A veces se pueden simplificar en relaciones binarias, pero no siempre es posible.
      • Relaciones n-arias
        • Relacionan n entidades
      •  Relaciones dobles
        • Se llaman así a dos relaciones distintas que sirven para relacionar a las mismas relaciones. Son las más difíciles de manejar ya que al manipular las entidades hay que elegir muy bien la relacionan a utilizar para relacionar los datos.
    • Relación reflexiva

    Es una relación que sirve para relacionar ejemplares de la misma entidad (personas con personas, piezas con piezas, etc.)

¿Qué es un Atributo?

  • Los Atributos son características unicas que nos permiten diferenciar entidades .

  • Usaremos como ejemplo de Entidad a un Alumno, ésta tendrá como Atributos Rut_alum, Nombre_alum,Apellido_Alum, Edad_Alum,.. todos estos son características que poseen todas las personas, pero también es cierto que generalmente son distintas.