Informática


Base de Datos


TECNOLOGICO ESPÍRITU SANTO

CARRERA ADMINISTRADOR

DE REDES

CREACIÓN DE BASE DE DATOS

PARA UNA ESCUELA UNIVERSITARIA

PROYECTO DE MATERIA

BASE DE DATOS 1

GUAYAQUIL, 15 DE JUNIO DEL 2005


DEDICATORIA

TECNOLOGICO ESPÍRITU SANTO

CARRERA ADMINISTRADOR

DE REDES

TEMA: CREACIÓN DE BASE DE DATOS

PARA UNA ESCUELA UNIVERSITARIA.

AUTORES:

FECHA: GQUIL, 15 DE JUNIO DEL2005

RESUMEN

La base de dato es un almacenamiento de datos en un registro. El registro agrupa la información asociada a un elemento de un conjunto, y está compuesto por campos. Así por ejemplo, un registro correspondiente a un número _ matricula no es más que un elemento de un conjunto: Alumno, etc. A su vez, ese registro contiene toda la información asociada al número _ matricula, clasificada en campos: nombre, apellido, dirección, etc.

Se puede hablar de propiedades características o campos característicos, y propiedades secundarias o campos secundarios según definan o complementen el elemento representado por el registro.

Por ejemplo, la tabla “profesores” tiene los siguientes campos: cedula, nombre, apellidos, teléfono, dirección. Lo campos cedula, nombre y apellidos son elementos o campos característicos. Los restantes son secundarios.

INTRODUCCIÓN.

La introducción del proyecto de base de dato es en el cual vamos a desarrollar una base de dato que contenga información de una escuela universitaria.. Tenemos que recopilar la información (solicitudes del usuario) necesaria para poder diseñar las entidades que se vayan a relacionar y luego crear las tablas en el motor de base de dato solicitado

TEMA

CREACIÓN DE BASE DE DATOS

PARA UNA ESCUELA UNIVERSITARIA.

La creación de la base de datos para la escuela universitaria, es para satisfacer a los usuarios que trabajen con estudiantes, profesores, coordinación entre otros. Con la base de dato tendría comodidad para su desempeño ya que ahorra más tiempo en su trabajo.

ANTECEDENTES Y JUSTIFICACIÓN

ANTECEDENTES

Crear una base de datos que contenga información para una escuela universitaria.

JUSTIFICACIÓN

Satisfacer al usuario que vaya a utilizar este servicio

OBJETIVOS.

El objetivo del proyecto de la escuela universitaria es de crear una base de datos que contenga la información de los resultados de las pruebas realizadas por los alumnos, los exámenes que dan los alumnos, información de los profesores, las prácticas que se realizan, tipo de prácticas.

METODOLOGÍA

La metodología de esta documentación de los códigos de SQL Server 2000 es explicar lo más entendible para que las personas entiendan la utilización de las bases de datos y su creación, consultas, modificación y su borrado.

TIPO DE INVESTIGACIÓN

Los tipos de investigaciones fueron los ejercicios en clases ya que con esos ejercicios pude desarrollar este proyecto.

INSTRUMENTOS UTILIZADOS

SQL Server 2000 para los códigos y su prueba.

PROYECTO - ESCUELA UNIVERSITARIA.

Los profesores de la asignatura de bases de datos de una escuela universitaria deciden crear una base de datos que contengan la información de los resultados de las pruebas que realizada por los alumnos.

Para realizar el diseño se sabe que:

  • Los alumnos es por su no. De matricula, nombre y el grupo al que asisten a clase.

  • Dichos alumnos realizan 2 tipos de pruebas a lo largo del curso académico:

  • Exámenes escrito.- cada alumno realiza varios a lo largo del curso y se define por el no. De examen, no. De pregunta de que consta y la fecha de realización (la misma para todos los alumnos que realizan el mismo examen). Evidentemente, es importante almacenar la nota de cada alumno por examen.

  • Practicas.- se realiza un no. Indeterminado de ellas durante el curso académico, algunas serán en grupo y otras individualidades. Se define por el código de práctica, titulo y el grado de dificultad. En este caso los alumnos pueden examinar5se de cualquier practica cuando lo deseen, debiéndose almacenar las fechas y notas obtenidas.

    • En cuanto a los profesores, únicamente interesa conocer (además de sus datos personales, DNI y nombre), quien es el que ha diseñado cada practica, sabiendo que el diseño de una practica puede colaborar mas de uno y que un profesor puede diseñar mas de una practica. Interesa. Además la fecha en que ha sido diseñada cada practica por el profesor.

    CREACION DE UNA DE LA BASE DE DATO.

    La creación de la bases de datos en SQL Server, ya que en esta plataforma vamos a trabajar nuestro proyecto.

    CREATE DATABASE TECNOLOGICO

    'Base de Datos'

    Imagen 1

    Creación de base de dato.

    Como ven hemos creado una base de datos donde nosotros vamos a tener las tablas de la base de dato de la escuela universitaria.

    CREACION DE LAS TABLAS

    EN LA BASE DE DATO.

    Creación de la tabla alumno, aquí es donde nosotros guardaremos la información de los estudiantes.

    create table alumno(

    numero_matricula char(3)not null,

    nombre char(20)not null,

    primary key (numero_matricula))

    Creación de la tabla examen alumno es tabla es una entidad de mucho a mucho entre las tablas examen y alumno.

    create table examen_alum(

    numero_matricula char(3) not null,

    numero_examen int not null,

    nota int not null,

    foreign key (numero_matricula)references alumno(numero_matricula),

    foreign key (numero_examen)references examen(numero_examen))

    Creación de la tabla examen, aquí es donde la información de los exámenes son ingresados.

    create table examen(

    numero_examen int not null,

    numero_pregunta int not null,

    fecha_realizada datetime not null,

    primary key (numero_examen))

    Creación de la tabla práctica, aquí es don de la información de las prácticas es ingresada.

    create table practicas(

    codigo_practicas char(3)not null,

    titulo char(20)not null,

    grado_dificultad char(20)not null,

    primary key (codigo_practicas))

    Creación de la tabla tipo de practicas esta tabla es una entidad de mucho a mucho entre alumno y practicas.

    create table tipo_practica(

    numero_matricula char(3)not null,

    codigo_practicas char(3)not null,

    fecha datetime,

    nota_obtenida int,

    foreign key (numero_matricula)references alumno(numero_matricula),

    foreign key (codigo_practicas)references practicas(codigo_practicas))

    Creación de la tabla profesor, aquí es donde se ingresa la información de los profesores requerida por los solicitantes.

    create table profesores(

    cedula_profesor char(10)not null,

    nombre char(20)not null,

    primary key (cedula_profesor))

    Creación de la tabla profesor y practicas, esta tabla es una entidad de mucho a mucho entre las tablas profesores y practicas.

    create table profesor_practicas(

    cedula_profesor char(10),

    codigo_practicas char(3) not null,

    fecha_practicas datetime not null,

    foreign key (cedula_profesor)references profesores(cedula_profesor),

    foreign key (codigo_practicas)references practicas(codigo_practicas))

    DISEÑO DE LAS TABLAS CREADAS

    Este es el diseño de las tablas creadas.

    • Alumno.

    • Examen_alum

    • Examen

    • Tipo _ practica

    • Practicas

    • Profesor _ practicas

    • Practicas.

    'Base de Datos'

    Imagen 2

    Creación de las tablas

    En la base de dato

    CLAVES PRIMARIAS Y FORÁNEAS DE CADA TABLA.

    Como esta definido en la creación de las tablas, se estableció las claves primarias y foráneas.

    'Base de Datos'

    Imagen 3

    Claves primaria y foráneas.

    Como el ejemplo que vemos en la tabla profesores tiene su clave primaria creada.

    VER EL CONTENIDO DE LAS TABLAS.

    Select es instrucción que se utiliza par haber el contenido de las tablas en SQL Server.

    Con un Select veremos las tablas que hemos creado en nuestra base.

    select * from alumno

    select * from examen

    select * from Examen_alum

    select * from practicas

    select * from profesores

    select * from tipo_practica

    select * from profesor_practicas

    'Base de Datos'

    Imagen 4

    Presentación de las

    Tablas creadas.

    Como ven aquí se presentan las tablas creadas totalmente vacías ya que todavía no se a ingresado información.

    AGREGANDOS CAMPOS A LAS TABLAS CREADAS.

    AGREGAR EL CAMPO APELLIDO, DIRECCION, TELEFONO A LA TABLA "ALUMNO".

    select * from alumno

    alter table alumno add apellido char(20)

    alter table alumno add dirección varchar(20)

    alter table alumno add teléfono char(9)

    AGREGAR EL CAMPO APELLIDO, DIRECCION, TELEFONO A LA TABLA "PROFESORES".

    select * from profesores

    alter table profesores add apellido char(20)

    alter table profesores add direccion char(20)

    alter table profesores add teléfono char(9)

    'Base de Datos'

    Imagen 5

    Ingreso de columnas a las tablas

    INSERTAR INFORMACIÓN EN LAS TABLAS CREADAS.

    INSERT.

    Insert es otras de las instrucciones que nos permite insertar información en las bases de datos.

    Vamos a insertar en la tabla alumno.

    select * from alumno

    insert alumno(numero_matricula,nombre,apellido,direccion,telefono)

    values ('001','José','Sánchez','Cdla. Las Orquideas','093433578')

    insert alumno(numero_matricula,nombre,apellido,direccion,telefono)

    values ('002','Javier','Fernandez','Urdesa Central','095486972')

    insert alumno(numero_matricula,nombre,apellido,direccion,telefono)

    values ('003','Juan','Soto','Cdla. Huancavilca','098456792')

    insert alumno(numero_matricula,nombre,apellido,direccion,telefono)

    values ('004','Paul','Cucalon','Cdla. Alborada','094589786')

    insert alumno(numero_matricula,nombre,apellido,direccion)

    values ('005','Freddy','Garces','Cdla. Atarazana')

    'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    INSERT A LA TABLA EXAMEN.

    Vamos a insertar en la tabla examen.

    Select * from examen

    insert examen(numero_examen,numero_pregunta,fecha_realizada)

    values (1,10,'2004-06-10')

    insert examen(numero_examen,numero_pregunta,fecha_realizada)

    values (2,20,'2005-10-14')

    insert examen(numero_examen,numero_pregunta,fecha_realizada)

    values (3,10,'2005-07-21')

    insert examen(numero_examen,numero_pregunta,fecha_realizada)

    values (4,15,'2005-08-28')

    'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    INSERT A LA TABLA PROFESORES.

    Vamos a insertar en la tabla profesores.

    select * from profesores

    insert profesores(cedula_profesor,nombre,apellido,direccion,telefono)

    values ('0922469878','Luis','Gomez','Cdla. Las Acacias','094254369')

    insert profesores(cedula_profesor,nombre,apellido,direccion,telefono)

    values ('0945369847','Carlos','Garcia','Los Almendros','094697815')

    insert profesores(cedula_profesor,nombre,apellido,direccion,telefono)

    values ('0925653438','Erick','Ramirez','Sauces 9','098264536')

    insert profesores(cedula_profesor,nombre,apellido,direccion,telefono)

    values ('0956421389','Henry','Marquez','Cdla. Las Fae','096457893')

    insert profesores(cedula_profesor,nombre,apellido,direccion)

    values ('0922468923','Marcelo','Silva','Geranios')

    'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    INSERT A LA TABLA PRÁCTICAS.

    Vamos a insertar en la tabla práctica.

    select * from practicas

    insert practicas(codigo_practicas,titulo,grado_dificultad)

    values ('001','Calculo','Alta')

    insert practicas(codigo_practicas,titulo,grado_dificultad)

    values ('002','Comunicacion Social','Media')

    insert practicas(codigo_practicas,titulo,grado_dificultad)

    values ('003','Internet','Alta')

    insert practicas(codigo_practicas,titulo,grado_dificultad)

    values ('004','Ecologia','Baja')

    C'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    INSERT A LA TABLA PROFESOR PRACTICAS.

    Vamos a insertar en la tabla Profesor_practicas

    select * from profesor_practicas

    insert profesor_practicas(cedula_profesor,codigo_practicas,fecha_practicas)

    values ('0922469878','001','2005-06-12')

    insert profesor_practicas(cedula_profesor,codigo_practicas,fecha_practicas)

    values ('0945369847','002','2005-07-15')

    insert profesor_practicas(cedula_profesor,codigo_practicas,fecha_practicas)

    values ('0925653438','003','2005-08-19')

    insert profesor_practicas(cedula_profesor,codigo_practicas,fecha_practicas)

    values ('0956421389','004','2005-09-28')

    'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    INSERT A LA TABLA TIPO PRACTICAS.

    Vamos a insertar en la tabla tipo _ prácticas

    select * from tipo_practica

    insert tipo_practica(numero_matricula,codigo_practicas,fecha,nota_obtenida)

    values('001','001','2005-04-15',20)

    insert tipo_practica(numero_matricula,codigo_practicas,fecha,nota_obtenida)

    values('002','002','2005-05-14',18)

    insert tipo_practica(numero_matricula,codigo_practicas,fecha,nota_obtenida)

    values('003','003','2005-06-10',19)

    insert tipo_practica(numero_matricula,codigo_practicas,fecha,nota_obtenida)

    values('004','004','2005-06-15',20)

    'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    INSERT A LA TABLA EXAMEN ALUMNO.

    Vamos a insertar en la tabla examen _ alum.

    select * from examen_alum

    insert examen_alum(numero_matricula,numero_examen,nota)

    values ('001',1,20)

    insert examen_alum(numero_matricula,numero_examen,nota)

    values ('002',2,18)

    insert examen_alum(numero_matricula,numero_examen,nota)

    values ('003',3,19)

    insert examen_alum(numero_matricula,numero_examen,nota)

    values ('004',4,17)

    'Base de Datos'

    Como vemos la información fue insertada y con los campos que fueron ingresados también.

    FUNCIONES AGREGADAS CON ALIAS

    En las funciones agregadas encontramos a:

    • Count

    • Max

    • Min

    • Avg

    • Sum

    select count(numero_matricula)as Matriculas from alumno

    'Base de Datos'

    select max(nota) as 'Nota Alta' from examen_alum

    'Base de Datos'

    select min(nota_obtenida) as 'Minima nota' from tipo_practica

    'Base de Datos'

    select avg(nota)as'Promedio de las notas' from examen_alum

    'Base de Datos'

    select sum(nota_obtenida)from tipo_practica

    'Base de Datos'

    DISTINCT

    Distinct permite eliminar los registros repetidos en la tabla cuando los presenta en la salida (en la consulta).

    DISTINCT A LA COLUMNA NUMERO DE PREGUNTA DE LA TABLA EXAMEN

    La cual hay valores que se repiten

    select * from examen

    select distinct numero_pregunta from examen

    'Base de Datos'

    DISTINCT A LA COLUMNA NOTA OBTENIDA DE LA TABLA TIPO_PRACTICA.

    La cual hay valores que se repiten.

    select * from tipo_practica

    select distinct nota_obtenida from tipo_practica

    'Base de Datos'

    OPERADOR WHERE.

    La cláusula where puede usarse para determinar qué registros de las tablas enumeradas en la cláusula from aparecerán en los resultados de la instrucción select.

    Después de escribir esta cláusula se deben especificar las condiciones expuestas en los pactados si no se emplea esta cláusula, la consulta devolverá todas las filas de la tabla. Where es opcional, pero cuando aparece debe ir a continuación de from.

    ESTE WHERE PRESENTA EL NOMBRE Y APELLIDO DE LA PERSONA.

    Que quiere en la condición where.

    select * from profesores

    select nombre, apellido from profesores where apellido='Gómez'

    'Base de Datos'

    Que quiere en la condición where.

    select * from alumno

    select nombre, apellido from alumno where numero_matricula='3'

    'Base de Datos'

    OPERADORES DEL WHERE.

    Los operadores de where se clasifican en:

    • Comparación

    • Cadena

    • Comparación lógica

    • Rango de valores

    • Listas

    • Valores desconocidos

    COMPARACION.

    select * from tipo_practica

    select codigo_practicas,nota_obtenida from tipo_practica

    where nota_obtenida >=19

    'Base de Datos'

    CADENA.

    select * from profesores

    select nombre, dirección from profesores where nombre like 'E%'

    select apellido, dirección from profesores where apellido like '%z'

    select nombre, dirección from profesores where nombre like '_a%'

    select direccion from profesores where direccion like 'c%'

    'Base de Datos'

    COMPARACION LOGICA.

    select * from profesores

    select nombre,apellido,direccion

    from profesores

    where nombre like 'E%' and apellido like '%z'

    'Base de Datos'

    RANGO DE VALORES.

    select * from tipo_practica

    'Base de Datos'

    select fecha from tipo_practica

    where fecha between'2005-04-01' and '2005-05-31'

    'Base de Datos'

    LISTAS.

    select * from practicas

    select titulo,grado_dificultad

    from practicas where titulo in ('comunicacion social','Ecologia')

    'Base de Datos'

    VALORES DESCONOCIDOS.

    select * from alumno

    select nombre,telefono from alumno where telefono is null

    select apellido,telefono from alumno where telefono is not null

    'Base de Datos'

    ORDER BY.

    Order by te permite ordenar tus columnas de forma ascendente y descendente.

    select * from profesores

    select cedula_profesor as cedula,nombre

    from profesores

    order by nombre desc

    select cedula_profesor as cedula,nombre

    from profesores

    order by nombre asc

    select cedula_profesor as cedula,nombre,apellido

    from profesores

    order by nombre asc,apellido desc

    'Base de Datos'

    GROUP BY.

    Group by es similar al distinct que utilizamos anteriormente, el group by se encarga de agrupar el contenido igual.

    select * from practicas

    select grado_dificultad from practicas

    where grado_dificultad ='alta'

    group by grado_dificultad

    'Base de Datos'

    select * from tipo_practica

    select nota_obtenida from tipo_practica

    where nota_obtenida='20'

    group by nota_obtenida

    'Base de Datos'

    HAVING.

    select * from examen_alum

    select numero_examen,avg(nota)as Promedio

    from examen_alum

    group by numero_examen

    having avg(nota)>=18

    'Base de Datos'

    select * from tipo_practica

    select numero_matricula,max(nota_obtenida)as 'nota máxima'

    from tipo_practica

    group by numero_matricula

    having max(nota_obtenida)>=19

    'Base de Datos'

    JOINS.

    Consultar que nombre del alumno y el grado de dificultad hizo en la práctica

    select * from alumno

    select * from practicas

    select * from tipo _ practicas

    select alumno.nombre,practicas.grado_dificultad

    from alumno,tipo_practica,practicas

    where alumno.numero_matricula=tipo_practica.numero_matricula and

    tipo_practica.codigo_practicas=practicas.codigo_practicas and

    alumno.numero_matricula=4

    'Base de Datos'

    Consultar que nombre y el apellido del profesor que da la clase "Calculo"

    select * from practicas

    select * from profesores

    select * from profesor_practicas

    select profesores.nombre,profesores.apellido

    from practicas,profesores,profesor_practicas

    where profesor_practicas.cedula_profesor=profesores.cedula_profesor and

    practicas.codigo_practicas=profesor_practicas.codigo_practicas and

    practicas.titulo='calculo'

    'Base de Datos'

    Consultar que la nota y el apellido del alumno Sánchez

    select * from alumno

    select * from examen_alum

    select examen_alum.nota,alumno.apellido

    from alumno,examen_alum

    where alumno.numero_matricula=examen_alum.numero_matricula and

    examen_alum.numero_examen=1

    'Base de Datos'

    SUB QUERY.

    Los sub query con parecidos a los joins sino que estos hacen las consultas por separado (tabla por tabla hasta terminar la consulta que esperas).

    select * from alumno

    select * from Examen_alum

    select nota,numero_matricula

    from examen_alum

    where numero_matricula =

    (select numero_matricula from alumno where apellido='Sánchez')

    'Base de Datos'

    UPDATE.

    El update sirve para actualizar una información que ya a sido ingresa a la base de dato.

    Como ven en este ejemplo el alumno Freddy no tiene teléfono ingresado.

    'Base de Datos'

    Utilizamos esta sentencia para actualizarlo.

    select * from alumno

    update alumno

    set teléfono ='095564891'

    where nombre='Freddy'

    'Base de Datos'

    Como ven en este ejemplo el profesor Marcelo no tiene teléfono ingresado.

    Select * from profesores

    update profesores

    set telefono='098645872'

    where nombre='Marcelo'

    'Base de Datos'

    DELETE.

    La sentencia delete permite borrar el contenido de una columna de la tabla a la cual se le da una referencia.

    Le asemos un select a la tabla examen_alum para ver el contenido de la tabla antes de borrar una columna.

    select * from examen_alum

    'Base de Datos'

    delete from examen_alum where nota='20'

    'Base de Datos'

    Lo mismo hacemos con la tabla tipo _ practicas, primero hacemos un select a la tabla antes de borrar la columna a seleccionar..

    select * from tipo_practica

    'Base de Datos'

    delete from tipo_practica where fecha='2005-04-15'

    'Base de Datos'

    CONCLUSIONES.

    Las conclusiones de este proyecto es satisfacer al usuario en lo que requiera y que pueda desempeñar su labores mas ágiles.

    ANEXOS.

    Como anexo se utiliza las imágenes y códigos en SQL Server 2000 para una mejor ilustración del proyecto de bases de datos.

    REFERENCIAS.

    Las referencias tomadas para realizar este proyecto fue tomado de las clases y ejercicios de la materia bases de datos 1.




    Descargar
    Enviado por:José Daniel Sánchez Ronquillo
    Idioma: castellano
    País: Ecuador

    Te va a interesar