Sei sulla pagina 1di 23

ECNOLOGICO ESPRITU SANTO CARRERA ADMINISTRADOR DE REDES CREACIN DE BASE DE DATOS PARA UNA ESCUELA UNIVERSITARIA PROYECTO DE MATERIA

BASE DE DATOS 1 GUAYAQUIL, 15 DE JUNIO DEL 2005

DEDICATORIA TECNOLOGICO ESPRITU SANTO CARRERA ADMINISTRADOR DE REDES TEMA: CREACIN 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 informacin asociada a un elemento de un conjunto, y est compuesto por campos. As por ejemplo, un registro correspondiente a un nmero _ matricula no es ms que un elemento de un conjunto: Alumno, etc. A su vez, ese registro contiene toda la informacin asociada al nmero _ matricula, clasificada en campos: nombre, apellido, direccin, etc. Se puede hablar de propiedades caractersticas o campos caractersticos, y propiedades secundarias o campos secundarios segn definan o complementen el elemento representado por el registro. Por ejemplo, la tabla profesores tiene los siguientes campos: cedula, nombre, apellidos, telfono, direccin. Lo campos cedula, nombre y apellidos son elementos o campos caractersticos. Los restantes son secundarios. INTRODUCCIN. La introduccin del proyecto de base de dato es en el cual vamos a desarrollar una base de dato que contenga informacin de una escuela universitaria.. Tenemos que recopilar la informacin (solicitudes del usuario) necesaria para poder disear las entidades que se vayan a relacionar y luego crear las tablas en el motor de base de dato solicitado TEMA CREACIN DE BASE DE DATOS PARA UNA ESCUELA UNIVERSITARIA.

La creacin de la base de datos para la escuela universitaria, es para satisfacer a los usuarios que trabajen con estudiantes, profesores, coordinacin entre otros. Con la base de dato tendra comodidad para su desempeo ya que ahorra ms tiempo en su trabajo. ANTECEDENTES Y JUSTIFICACIN ANTECEDENTES Crear una base de datos que contenga informacin para una escuela universitaria. JUSTIFICACIN 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 informacin de los resultados de las pruebas realizadas por los alumnos, los exmenes que dan los alumnos, informacin de los profesores, las prcticas que se realizan, tipo de prcticas. METODOLOGA La metodologa de esta documentacin de los cdigos de SQL Server 2000 es explicar lo ms entendible para que las personas entiendan la utilizacin de las bases de datos y su creacin, consultas, modificacin y su borrado. TIPO DE INVESTIGACIN 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 cdigos 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 informacin de los resultados de las pruebas que realizada por los alumnos. Para realizar el diseo 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 acadmico: Exmenes 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 realizacin (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 acadmico, algunas sern en grupo y otras individualidades. Se define por el cdigo de prctica, titulo y el grado de dificultad. En este caso los alumnos pueden examinar5se de cualquier practica cuando lo deseen, debindose almacenar las fechas y notas obtenidas.

En cuanto a los profesores, nicamente interesa conocer (adems de sus datos personales, DNI y nombre), quien es el que ha diseado cada practica, sabiendo que el diseo de una practica puede colaborar mas de uno y que un profesor puede disear mas de una practica. Interesa. Adems la fecha en que ha sido diseada cada practica por el profesor.

CREACION DE UNA DE LA BASE DE DATO. La creacin de la bases de datos en SQL Server, ya que en esta plataforma vamos a trabajar nuestro proyecto. CREATE DATABASE TECNOLOGICO

Imagen 1 Creacin 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. Creacin de la tabla alumno, aqu es donde nosotros guardaremos la informacin de los estudiantes. create table alumno( numero_matricula char(3)not null, nombre char(20)not null, primary key (numero_matricula)) Creacin 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)) Creacin de la tabla examen, aqu es donde la informacin de los exmenes son ingresados. create table examen( numero_examen int not null, numero_pregunta int not null, fecha_realizada datetime not null, primary key (numero_examen)) Creacin de la tabla prctica, aqu es don de la informacin de las prcticas 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)) Creacin 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)) Creacin de la tabla profesor, aqu es donde se ingresa la informacin 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))

Creacin 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)) DISEO DE LAS TABLAS CREADAS Este es el diseo de las tablas creadas.

Alumno. Examen_alum Examen Tipo _ practica Practicas Profesor _ practicas Practicas.

Imagen 2 Creacin de las tablas En la base de dato CLAVES PRIMARIAS Y FORNEAS DE CADA TABLA.

Como esta definido en la creacin de las tablas, se estableci las claves primarias y forneas.

Imagen 3 Claves primaria y forneas. Como el ejemplo que vemos en la tabla profesores tiene su clave primaria creada. VER EL CONTENIDO DE LAS TABLAS. Select es instruccin 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

Imagen 4 Presentacin de las Tablas creadas. Como ven aqu se presentan las tablas creadas totalmente vacas ya que todava no se a ingresado informacin. 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 direccin varchar(20) alter table alumno add telfono 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 telfono char(9)

Imagen 5 Ingreso de columnas a las tablas INSERTAR INFORMACIN EN LAS TABLAS CREADAS. INSERT. Insert es otras de las instrucciones que nos permite insertar informacin 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','Snchez','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')

Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. 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')

Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. 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')

Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. INSERT A LA TABLA PRCTICAS. Vamos a insertar en la tabla prctica. 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 Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. 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')

Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. INSERT A LA TABLA TIPO PRACTICAS. Vamos a insertar en la tabla tipo _ prcticas 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)

Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. 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)

Como vemos la informacin fue insertada y con los campos que fueron ingresados tambin. FUNCIONES AGREGADAS CON ALIAS En las funciones agregadas encontramos a:

Count Max Min Avg Sum select count(numero_matricula)as Matriculas from alumno

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

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

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

select sum(nota_obtenida)from tipo_practica

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

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

OPERADOR WHERE. La clusula where puede usarse para determinar qu registros de las tablas enumeradas en la clusula from aparecern en los resultados de la instruccin select. Despus de escribir esta clusula se deben especificar las condiciones expuestas en los pactados si no se emplea esta clusula, la consulta devolver todas las filas de la tabla. Where es opcional, pero cuando aparece debe ir a continuacin de from. ESTE WHERE PRESENTA EL NOMBRE Y APELLIDO DE LA PERSONA. Que quiere en la condicin where. select * from profesores select nombre, apellido from profesores where apellido='Gmez'

Que quiere en la condicin where. select * from alumno select nombre, apellido from alumno where numero_matricula='3'

OPERADORES DEL WHERE. Los operadores de where se clasifican en:


Comparacin Cadena Comparacin lgica Rango de valores Listas Valores desconocidos COMPARACION. select * from tipo_practica select codigo_practicas,nota_obtenida from tipo_practica where nota_obtenida >=19

CADENA. select * from profesores select nombre, direccin from profesores where nombre like 'E%' select apellido, direccin from profesores where apellido like '%z' select nombre, direccin from profesores where nombre like '_a%' select direccion from profesores where direccion like 'c%'

COMPARACION LOGICA. select * from profesores select nombre,apellido,direccion from profesores where nombre like 'E%' and apellido like '%z'

RANGO DE VALORES. select * from tipo_practica

select fecha from tipo_practica where fecha between'2005-04-01' and '2005-05-31'

LISTAS. select * from practicas select titulo,grado_dificultad from practicas where titulo in ('comunicacion social','Ecologia')

VALORES DESCONOCIDOS. select * from alumno select nombre,telefono from alumno where telefono is null select apellido,telefono from alumno where telefono is not null

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

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

select * from tipo_practica select nota_obtenida from tipo_practica

where nota_obtenida='20' group by nota_obtenida

HAVING. select * from examen_alum select numero_examen,avg(nota)as Promedio from examen_alum group by numero_examen having avg(nota)>=18

select * from tipo_practica select numero_matricula,max(nota_obtenida)as 'nota mxima' from tipo_practica group by numero_matricula having max(nota_obtenida)>=19

JOINS. Consultar que nombre del alumno y el grado de dificultad hizo en la prctica 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

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'

Consultar que la nota y el apellido del alumno Snchez 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

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='Snchez')

UPDATE. El update sirve para actualizar una informacin que ya a sido ingresa a la base de dato. Como ven en este ejemplo el alumno Freddy no tiene telfono ingresado.

Utilizamos esta sentencia para actualizarlo. select * from alumno update alumno set telfono ='095564891' where nombre='Freddy'

Como ven en este ejemplo el profesor Marcelo no tiene telfono ingresado. Select * from profesores update profesores set telefono='098645872' where nombre='Marcelo'

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

delete from examen_alum where nota='20'

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

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

CONCLUSIONES. Las conclusiones de este proyecto es satisfacer al usuario en lo que requiera y que pueda desempear su labores mas giles. ANEXOS. Como anexo se utiliza las imgenes y cdigos en SQL Server 2000 para una mejor ilustracin 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.

Potrebbero piacerti anche