Sei sulla pagina 1di 22

INSTITUTO TECNOLOGICO DE LAZARO CARDENAS

ALUMNO (S): VICTOR MANUEL ALANIS VELAZQUEZ HOMAR SANCHEZ BAUTISTA LUIS FELIPE FIGUEROA INFANTE

PROFESOR (A): ARACELI VELAZQUEZ GUTIRREZ

ASIGNATURA: FUNDAMENTOS DE BASE DE DATOS

CARRERA: INGENIERIA EN SISTEMAS COMPUTACIONALES

PROYECTO: DISEO DE UN SISTEMA DE BASE DE DATOS PARA EL CONTROL ESCOLAR.

OBJETIVO. Desarrollar un sistema de base de datos en el cual nos permita llevar el control escolar de una institucin de nivel medio superior para un mejor manejo de de la informacin desarrollando los conocimientos adquiridos en el aula.

INTRODUCCIN.
Un sistema de bases de datos es bsicamente un sistema computarizado para llevar registros.

Es posible considerar a la propia base de datos como una especie de armario electrnico para archivar; es decir, es un depsito o contenedor de una coleccin de archivos de datos computarizados. Los usuarios del sistema pueden realizar una variedad de operaciones sobre dichos archivos, por ejemplo:

Agregar nuevos archivos vacos a la base de datos; Insertar datos dentro de los archivos existentes; Recuperar datos de los archivos existentes; Modificar datos en archivos existentes; Eliminar datos de los archivos existentes; Eliminar archivos existentes de la base de datos. Consultar los datos existentes

Las

instrucciones

SELECT,

INSERT, UPDATE,

DELETE

estn

expresadas en un lenguaje denominado SQL. SQL es el lenguaje estndar para interactuar con bases de datos relacinales y es soportado por prctica mente todos los productos de base de datos actuales.

JUSTIFICACIN.

Este proyecto, busca fundamentalmente responder a las necesidades y aspiraciones tanto de alumnos como de los trabajadores encargados para el manejo de este sistema de control escolar, de los principales problemas que padece y de las demandas especficas que formul la comunidad estudiantil.

MARCO TERICO.

Una base de datos es un conjunto de datos persistentes que es utilizado por los sistemas de aplicacin de alguna empresa dada. Aqu, el trmino "empresa" es simplemente un trmino genrico conveniente para identificar a cualquier organizacin independiente de tipo comercial, tcnico, cientfico u otro. Una empresa podra ser un solo individuo (con una pequea base de datos personal), toda una corporacin o un gran consorcio similar (con una gran base de datos compartida) o todo lo que se ubique entre estas dos opciones. Aqu tenemos algunos ejemplos:

1. Una compaa manufacturera 2. Un banco 3. Un hospital 4. Una universidad 5. Un departamento gubernamental

Toda empresa necesariamente debe mantener una gran cantidad de datos acerca de su operacin. La implementacin de determinado modelo de datos es una realizacin fsica, en una mquina real, de los componentes de la mquina abstracta que en conjunto constituyen ese modelo.

DESCRIPCIN DEL PROBLEMA. Tener acceso de manera ms eficiente a la informacin para un mejor manejo de resultados especficos, como promedios, ndice de reprobacin y/o aprobacin, exmenes especiales, etc.

PROCESO DE CONTROL ESCOLAR.

1.-El alumno tiene un registro contenido en la tabla inscripciones, cuyos datos personales estn registrados en la tabla alumno, adems de poder consultar sus calificaciones en la tabla calificaciones por unidad, ellos mismos cada semestre se podrn reinscribir cada semestre en un horario segn su promedio general que podrn corroborar en la tabla calificaciones por semestre.

2.-El maestro tiene un registro en la tabla profesores, dicha tabla almacena sus datos personales, en la tabla grupos lleva un control sobre los grupos a los que da clases,

3.-En las tablas horarios_alumno y horario_prof tanto maestros como alumnos podrn identificar las horas y las aulas en las que impartirn y recibirn sus materias.

4.-En las tablas aulas y aulas_aux se podr encontrar informacin del nombre de las aulas, edificio en el que se encuentran y numero de aula, adems del equipo con la que cuenta el aula.

5.-En las tablas exmenes_especiales y traslados se

manejan datos en

casos de algunos alumnos, no en su totalidad como las otras tablas solo los que requieran un ltimo examen para acreditar la materia y los que soliciten un cambio de institucin respectivamente.

IDENTIFICACIN DE ENTIDADES. Las entidades fuertes en nuestra base de datos se identifican con nombres: Alumnos Profesores Grupos Exmenes_especiales Inscripciones Reinscripciones Traslados Aulas Materias los

Las entidades dbiles en nuestra base de datos se identifican con los nombres: o Aulas_aux o Horario_alumno o Horario_prof o Calificacin_semestre o Calificacin_unidad o Grupos

ALCANCES DEL PROYECTO.

El sistema podr llevar el control sobre la informacin personal del alumnado as como de profesores, sus calificaciones, materias y grupos asignados,

respectivamente.

PROCESO DE NORMALIZACIN.

En este proceso lo primero que hicimos fue identificar los datos atmicos y los no atmicos de cada tabla para as poder pasarlos a 1FN. Las tablas que no tenan atributos con valores atmicos se deca que la cumplan con 1FN y las que no tuvimos que separar dichos valores (atributos) a una tabla auxiliar tomando en cuenta las llaves primarias.

Despus proseguimos con cada tabla para ahora pasarlas a 2FN, primero que nada las tablas deben estar en 1FN para poder pasarlas a 2FN ya cumpliendo esto, se pueden pasar a 2FN, que nos dice que todo atributo que nos sea clave primaria debe depender nicamente de dicha llave, de no ser as debe separarse o eliminarse as que sabiendo esto proseguimos a dicho proceso hasta terminar la 2FN en cada tabla.

Continuando con nuestro proceso de normalizacin ya habiendo cumplido con la 1FN Y 2FN, ahora se tena que aplicar 3FN, la que nos dice que todo atributo no primario (que no pertenece a la clave primaria) debe depender de la clave primaria y no de otro atributo no primario, si este depende ms de otro atributo ajeno a la llave primaria entonces debe separare o en dado caso ser eliminado, sabiendo esto proseguimos a la aplicacin de la 3FN en cada una de nuestras tablas.

Ya teniendo nuestras tablas en 1FN, 2FN Y 3FN, proseguimos con la FNBC que va de la mano con la 3FN ya que trata igualmente de dependencias funcionales, pero lo que caracteriza a esta forma normal, es que es ms rigurosa que la 3FN ya que aun siendo llaves primarias los atributos, estos no deben depender de unos atributos ms que otros, si no solo deben depender de la llave primaria en s, sabiendo esto continuamos a aplicar la FNBC.

Continuando con la 4FN, nos dice que si hay datos independientes estos deben ser separados, esto se refiere a las dependencias multivaluadas, los atributos

aun siendo llave primaria deben depender de los dems, de no ser as deben separarse de tal manera que tengan congruencia a la hora de introducir datos, sabiendo esto proseguimos a aplicar la 4FN.

Ya la 5FN trata de evitar la redundancia en los datos, si se encuentra dicha redundancia en los datos se tienen que separa los atributos que propicien la misma, sabiendo esto proseguimos a aplicar la 5FN.

Ya habiendo aplicado la 1FN, 2FN, 3FN, FNBC, 4FN Y 5FN dimos por terminado nuestro proceso de normalizacin. Existe otra forma normal (FN) llamada DKNF la cual omitimos por ser difcil de alcanzar en la prctica.

Ya con esto podemos decir que nuestras tablas o mejor dicho nuestra base de datos (BD) est normalizada.

En la siguiente imagen se muestra nuestra base de datos (BD) ya normalizada:

DIAGRAMA FINAL.

alumnos <<num_control>> carrera

aula <<aula>>

aluas_aux <<cantidad aula FK equipo_aula>>

calificacin_semestre <<periodo_escolar num_control FK>> prom_general prom_semestre

calificaciones_unidad <<unidad num_control FK id_grupo FK >> calificacin

profesores <<num_empleado>>

horario_prof <<da id_grupo FK >> aula FK hora_materia

exmenes_especiales <<fecha_aplicacin num_control FK cve_materia FK >> prof_sinodal prof_sinodal2 calificacin profesor_titular

grupos <<id_grupo>> horas_totales periodo_escolar num_empleado FK cve_materia FK

horario_alumno <<prom_materia id_grupo FK num_control FK>>

traslados <<num_solicitud>> lugar_traslado fecha_traslado

reinscripciones <<fecha_reinscripcin num_control FK>> pago_reinscripcin horario_reinscripcin periodo_escolar

inscripciones <<carrera num_ficha>> fecha_inscripcin fecha_limite_inscripcin

materias <<cve_materia>> horas_materia nombre_materia carrera crditos plan

datos_personales nombre edad curp direccin telfono correo

CODIGO SQL.

-- Seccin de la creacin de las tablas -------------------------------------------------- Creacin de la tabla datos_personales CREATE TABLE "datos_personales"( "nombre" Character varying(30), "edad" Bigint, "curp" Character varying(20), "direccion" Character varying(30), "telefono" Character varying(20), "correo" Character varying(30) ) INHERITS ("datos_personales") WITH (OIDS=FALSE) ;

-- Creacin de la tabla alumnos

CREATE TABLE "alumnos"( "num_control" Bigint NOT NULL, "carrera" Character varying(20) ) INHERITS ("datos_personales") WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla alumnos

ALTER TABLE "alumnos" ADD CONSTRAINT "Key2" PRIMARY KEY ("num_control") ;

-- Creacin de la tabla profesores

CREATE TABLE "profesores"( "num_empleado" Bigint NOT NULL ) INHERITS ("datos_personales") WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla profesores

ALTER TABLE "profesores" ADD CONSTRAINT "Key3" PRIMARY KEY ("num_empleado") ;

-- Creacin de la tabla grupos

CREATE TABLE "grupos"( "id_grupo" Bigint NOT NULL, "horas_totales" Bigint, "periodo_escolar" Character varying(20), "num_empleado" Bigint, "cve_materia" Bigint ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla grupos

ALTER

TABLE

"grupos"

ADD

CONSTRAINT

"Key4"

PRIMARY

KEY

("id_grupo") ;

-- Creacin de la tabla horario_prof

CREATE TABLE "horario_prof"(

"dia" Bigint NOT NULL, "id_grupo" Bigint NOT NULL, "aula" Character varying(20) NOT NULL, "hora_materia" Character varying(20) ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla horario_prof

ALTER TABLE "horario_prof" ADD CONSTRAINT "Key5" PRIMARY KEY ("aula","id_grupo","dia") ;

-- Creacin de la tabla aula

CREATE TABLE "aula"( "aula" Character varying(20) NOT NULL ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla aula

ALTER TABLE "aula" ADD CONSTRAINT "Key6" PRIMARY KEY ("aula") ;

-- Creacin de la tabla horario_alumno

CREATE TABLE "horario_alumno"( "prom_materia" Bigint NOT NULL, "id_grupo" Bigint NOT NULL, "num_control" Bigint NOT NULL )

WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla horario_alumno

ALTER TABLE "horario_alumno" ADD CONSTRAINT "Key7" PRIMARY KEY ("prom_materia","id_grupo","num_control") ;

-- Creacin de la tabla materias

CREATE TABLE "materias"( "cve_materia" Bigint NOT NULL, "horas_materia" Bigint, "nombre_materia" Character varying(20), "carrera" Character varying(20), "creditos" Bigint, "plan" Bigint ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla materias

ALTER TABLE "materias" ADD CONSTRAINT "Key8" PRIMARY KEY ("cve_materia") ;

-- Creacin de la tabla calificacion_semestre

CREATE TABLE "calificacion_semestre"( "periodo_escolar" Character varying(20) NOT NULL, "prom_semestre" Bigint, "prom_general" Bigint,

"num_control" Bigint NOT NULL ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla calificacion_semestre

ALTER TABLE "calificacion_semestre" ADD CONSTRAINT "Key9" PRIMARY KEY ("periodo_escolar","num_control") ;

-- Creacin de la tabla calificaciones_unidad

CREATE TABLE "calificaciones_unidad"( "unidad" Bigint NOT NULL, "num_control" Bigint NOT NULL, "id_grupo" Bigint NOT NULL, "calificacion" Bigint NOT NULL ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla calificaciones_unidad

ALTER TABLE "calificaciones_unidad" ADD CONSTRAINT "Key10" PRIMARY KEY ("unidad","num_control","id_grupo") ;

-- Creacin de la tabla reinscripciones

CREATE TABLE "reinscripciones"( "fecha_reinscripcion" Character varying(20) NOT NULL, "periodo_escolar" Character varying(20), "pago_reinscripcion" Bigint,

"horario_reinscripcion" Character varying(20), "num_control" Bigint NOT NULL ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla reinscripciones

ALTER TABLE "reinscripciones" ADD CONSTRAINT "Key11" PRIMARY KEY ("num_control","fecha_reinscripcion") ;

-- Creacin de la tabla inscripciones

CREATE TABLE "inscripciones"( "carrera" Character varying(20) NOT NULL, "num_ficha" Bigint NOT NULL, "fecha_inscripcion" Character varying(20), "fecha_limite_inscripcion" Bigint ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla inscripciones

ALTER TABLE "inscripciones" ADD CONSTRAINT "Key12" PRIMARY KEY ("carrera","num_ficha") ;

-- Creacin de la tabla examenes_especiales

CREATE TABLE "examenes_especiales"( "fecha_aplicacion" Character varying(20) NOT NULL, "calificacion" Bigint,

"profesor_titular" Character varying(30), "prof_sinodal" Character varying(30), "prof_sinodal2" Character varying(30) ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla examenes_especiales

ALTER TABLE "examenes_especiales" ADD CONSTRAINT "Key13" PRIMARY KEY ("fecha_aplicacion") ;

-- Creacin de la tabla aulas_aux

CREATE TABLE "aulas_aux"( "cantidad" Bigint NOT NULL, "equipo_aula" Bigint NOT NULL, "aula" Character varying(20) NOT NULL ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla aulas_aux

ALTER TABLE "aulas_aux" ADD CONSTRAINT "Key14" PRIMARY KEY ("cantidad","equipo_aula","aula") ;

-- Creacin de la tabla traslados

CREATE TABLE "traslados"( "num_solicitud" Bigint NOT NULL, "lugar_traslado" Character varying(30),

"fecha_traslado" Character varying(20) ) WITH (OIDS=FALSE) ;

-- Se agregan las llaves primarias para la tabla traslados

ALTER TABLE "traslados" ADD CONSTRAINT "Key15" PRIMARY KEY ("num_solicitud") ;

-- Seccin de la creacin de las relaciones (o llaves forneas) ------------------------------------------------

ALTER TABLE "horario_prof" ADD CONSTRAINT "Relationship1" FOREIGN KEY ("aula") REFERENCES "aula" ("aula") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "horario_prof" ADD CONSTRAINT "Relationship2" FOREIGN KEY ("id_grupo") REFERENCES "grupos" ("id_grupo") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "grupos" ADD CONSTRAINT "Relationship5" FOREIGN KEY ("num_empleado") REFERENCES "profesores" ("num_empleado") ON

DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER

TABLE

"horario_alumno"

ADD

CONSTRAINT

"Relationship6"

FOREIGN KEY ("id_grupo") REFERENCES "grupos" ("id_grupo") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER

TABLE

"horario_alumno"

ADD

CONSTRAINT

"Relationship7"

FOREIGN KEY ("num_control") REFERENCES "alumnos" ("num_control") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "grupos" ADD CONSTRAINT "Relationship9" FOREIGN KEY ("cve_materia") REFERENCES "materias" ("cve_materia") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "calificacion_semestre" ADD CONSTRAINT "Relationship10" FOREIGN KEY ("num_control") REFERENCES "alumnos" ("num_control") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "calificaciones_unidad" ADD CONSTRAINT "Relationship11" FOREIGN KEY ("num_control") REFERENCES "alumnos" ("num_control") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "calificaciones_unidad" ADD CONSTRAINT "Relationship12" FOREIGN KEY ("id_grupo") REFERENCES "grupos" ("id_grupo") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER

TABLE

"reinscripciones"

ADD

CONSTRAINT

"Relationship13"

FOREIGN KEY ("num_control") REFERENCES "alumnos" ("num_control") ON DELETE NO ACTION ON UPDATE NO ACTION ;

ALTER TABLE "aulas_aux" ADD CONSTRAINT "Relationship14" FOREIGN KEY ("aula") REFERENCES "aula" ("aula") ON DELETE NO ACTION ON UPDATE NO ACTION ;

Aplicacin de Herencia (Diagrama y cdigo SQL).

Tabla Padre
datos_personales nombre edad curp direccin telfono correo

Cdigo generado
-- Seccin de la creacin de las tablas ------------------------------------------------- Creacin de la tabla datos_personales CREATE TABLE "datos_personales"( "nombre" Character varying(30), "edad" Bigint, "curp" Character varying(20), "direccion" Character varying(30), "telefono" Character varying(20), "correo" Character varying(30) ) INHERITS ("datos_personales")

Tablas Hijo (o heredadas)


alumnos <<num_control>> carrera

WITH (OIDS=FALSE) ;

-- Creacin de la tabla alumnos CREATE TABLE "alumnos"( "num_control" Bigint NOT NULL, "carrera" Character varying(20) ) INHERITS ("datos_personales") WITH (OIDS=FALSE) ; -- Se agregan las llaves primarias para la tabla alumnos ALTER TABLE "alumnos" ADD CONSTRAINT "Key2" PRIMARY KEY ("num_control") ;

profesores <<num_empleado>>
Nota. Ntese que las tablas alumnos y profesores (tablas
hijo) carecen de atributos, esto es porque al utilizar herencia la tabla datos_personales (tabla padre) les heredara dichos atributos pertenecientes a la misma a las tablas alumnos y profesores (tablas hijo), la herencia se efectuar mediante el siguiente cdigo: <<INHERITS ("datos_personales")>> generado por el modelador

-- Creacin de la tabla profesores CREATE TABLE "profesores"( "num_empleado" Bigint NOT NULL ) INHERITS ("datos_personales") WITH (OIDS=FALSE) ; -- Se agregan las llaves primarias para la tabla profesores ALTER TABLE "profesores" ADD CONSTRAINT "Key3" PRIMARY KEY ("num_empleado") ;

utilizado, en este caso Toad Data Modeler (el cdigo SQL completo generado por el modelador, se puede apreciar en la parte izquierda para cada tabla respectivamente). La herencia se ver reflejada ya en la base de datos (BD) a utilizar, en este caso PostgreSQL.

INSTRUCCIONES SQL. Insercin de datos nuevos:


INSERT INTO alumnos VALUES ('maria ramirez',24,'mara4509hmnllc02c','aguas11','987632','mara4509hmnllc02c',9560010,'ie'), ('mario suarez',24,'mas4509hmnllc02c','aguas1','454536','mas@hotmail.com',9560011,'isc'), ('julio agosto',20,'ve910120hmnllc02c','los perros 1','321415','ja@hotmail.com',9560012,'iq'), ('salomon solorio',19,'jaret98093hmnllc02c','torreon 67','456734','ss@hotmail.com',9560013,'iq'), ('rafaela soas',20,'sosa0420hmnllc02c','las cotorras 26','879034','rsosa_04@hotmail.com',9560014,'isc'), ('emmanuel alanis',20,'ve910120hmnllc02','torreon 17','894532','manuel@hotmail.com',9560015,'ii'), ('juan mendez',21,'jlm901009hmnllc0','pera 45','907634','jlme@hotmail.com',9560016,'isc'), ('vixtor alanis',20,'aavv910120hmnll','torreon 17','231425','vmav_2091@hotmail',9560017,'isc'), ('mario rivas',22,'mar0131321hmnllc0','manzanas 34','645328','mar@hotmail.com',9560018,'iel'), ('rafael marquez',20,'rm0420hmnllc02c','las cotorras 56','243516','rm_04@hotmail.com',9560019,'isc'), ('jorge perez',19,'j90320hmnllc02c','rio verde','231648','jlp@hotmail.com',9560020,'ie'); INSERT INTO calificacion_semestre VALUES ('ene-jun 2011',90,93,9560010), ('ene-jun 2011',80,90,9560011), ('ene-jun 2011',80,100,9560012), ('ene-jun 2011',70,70,9560013), ('ene-jun 2011',80,85,9560014), ('ene-jun 2011',75,80,9560015), ('ene-jun 2011',85,87,9560016), ('ene-jun 2011',77,79,9560017), ('ene-jun 2011',79,80,9560018), ('ene-jun 2011',80;85,9560019), ('ene-jun 2011',80;85,9560020); INSERT INTO calificaciones_unidad VALUES (1,9560010,110,70), (2,9560010,110,85), (2,9560011,111,80), (3,9560010,110,90), (3,9560011,111,95), (3,9560012,112,90), (4,9560010,110,100), (4,9560011,111,87), (4,9560013,113,100), (5,9560011,111,78); INSERT INTO reinscripciones VALUES ('23/08/11','ago-dic',800,'12:00-13:00',9560010), (24/08/11','ago-dic',900,'11:00-14:00',9560011), ('24/09/11','ago-dic',900,'12:00-14:00',9560012), ('25/08/11','ago-dic',700,'10:00-14:00',9560013), ('24/08/11','ago-dic',1000,'13:0015:00',9560014), ('15/08/11','ago-dic',800,'12:00-14:00',9560015), ('16/08/11','ago-dic',900,'11:00-14:00',9560016), ('24/08/11','ago-dic',900,'09:00-12:00',9560016), ('22/08/11','ago-dic',800,'10:00-13:00',9560018), ('14/08/11','ago-dic',700,'10:00-12:00',9560019);

Modificacin de datos existentes:


UPDATE grupos SET periodo_escolar = 'ago - dic 2011' WHERE periodo_escolar like '%e%'; UPDATE grupos SET horas_totales = horas_totales + 1 WHERE num_empleado > 13; UPDATE aulas_aux SET cantidad = cantidad + 2 WHERE cantidad < 2;

Eliminacin de datos existentes:


DELETE FROM calificacion_semestre WHERE prom_semestre >= 70; DELETE FROM calificaciones_unidad WHERE calificacion > 69; DELETE FROM reinscripciones WHERE periodo_escolar LIKE '%a%';

Consulta de datos existentes


Nombre de las materias que se imparten el mircoles en el aula e5.
SELECT nombre_materia, dia_materia, num_aula FROM horario_alumno_aux1 where num_aula = 'e5' and dia_materia = 'miercoles';

Nombre de las materias que lleva el estudiante con el num_control 09560634.


SELECT nombre_materia, num_control FROM horario_alumno_aux1 where num_control = 9560634;

Cantidad de alumnos que llevan la materia fundamentos bd.


SELECT nombre_materia, count(*) FROM horario_alumno_aux1 where nombre_materia = 'fundamentos bd' group by nombre_materia;

Nombre de los alumnos que harn exmenes especiales.


SELECT calificacion, alumnos.nombre_alumno FROM examenes_especiales,alumnos WHERE alumnos.num_control = examenes_especiales.num_control and calificacin = 0;

Nombre de los alumnos que ya presentaron exmenes especiales y su calificacin.


SELECT calificacion,alumnos.nombre_alumno FROM examenes_especiales,alumnos WHERE alumnos.num_control = examenes_especiales.num_control and calificacion>=70;

Recomendaciones a considerar al momento de usar INSERT, DELETE, UPDATE: En el momento llenar las tablas con datos, lo primero que
deben hacer es llenar aquellas tablas que contengan las llaves primarias ya que si llenan antes las que estn relacionadas, este marcara error por la restriccin de la lleve fornea, en otras palabras, primero se deben de llenar las columnas que sean llaves primarias antes que las columnas que sean llaves forneas de la otra tabla o de las otras donde all relacin. Tambin al momento de querer eliminar filas, deben de tomar en cuenta que si las tablas ya estn llenas con datos y se quiere eliminar una fila donde una columna es llave primaria no se les permitir por la restriccin ya que hay una llave fornea en otra tabla, esto es porque hay relacin entre esas tablas, la relaciones pueden existir entre dos o mas tablas, as que, lo primero que deben hacer es, eliminar los datos de aquellas tablas con las que est relacionada dicha tabla. Estas consideraciones se aplican de igual manera al momento de modificar (o actualizar) un dato.

CONCLUSION.
El uso correcto de esta base de datos nos permite un mejor manejo de la informacin almacenada tanto para alumnos como maestros, adems de haber aprendido herramientas importantes para el desarrollo de una base de datos que hasta el momento no nos haban explicado tan correcto como en este curso.

BIBLIOGRAFA.
FUNDAMENTOS DE BASES DE DATOS Cuarta edicin Abraham Silberschatz Introduccin a los Sistemas de bases de datos SPTIMA EDICIN C. J. Date

Potrebbero piacerti anche