geofox

paquete consultas

Mar 25th, 2012
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 26.29 KB | None | 0 0
  1. /* PAQUETE DE CONSULTAS */
  2.  
  3. CREATE OR REPLACE PACKAGE CONSULTAS AS
  4.  
  5.  PROCEDURE Responsables_Grado;
  6.  PROCEDURE Responsables_Grado(DESDE NUMBER, HASTA NUMBER);
  7.  PROCEDURE Responsables_Grados;
  8.  PROCEDURE Responsables_Grados(DESDE NUMBER, HASTA NUMBER);
  9.  PROCEDURE nasignaturas_docente;
  10.  PROCEDURE Docente_Materias(DOCENTE VARCHAR2,ANIO NUMBER);
  11.  PROCEDURE Alumnos_Matriculados;
  12.  PROCEDURE Alumnos_Matriculados(DESDE NUMBER,HASTA NUMBER);
  13.  PROCEDURE CantMatriculados_actual;
  14.  PROCEDURE Alumnos_Sexo;
  15.  PROCEDURE CantMatriculados_sexo;
  16.  PROCEDURE ListaAlumnos_Grados(GRADO VARCHAR2,
  17.  ESPECIALIDAD VARCHAR2,SECCION VARCHAR2);
  18.  PROCEDURE  Notas_Materias(CODIGO INTEGER);
  19.  PROCEDURE  Notas_Materias(CODIGO INTEGER,PERIODO INTEGER);
  20.  PROCEDURE  Materias_Notas(CODIGOM INTEGER);
  21.  PROCEDURE  Notas_Grado(GRADO VARCHAR2, ESPECIALIDAD VARCHAR2,
  22.  SECCION VARCHAR2);
  23.  PROCEDURE  Cuadro_Notas(GRADO VARCHAR2, ESPECIALIDAD VARCHAR2,
  24.  SECCION VARCHAR2, MAT VARCHAR2, PERIDO VARCHAR2);
  25.  PROCEDURE Alumnos_Sexo(SEX VARCHAR2, OPCION VARCHAR2);
  26.  PROCEDURE  Cantidad_Alumnos;
  27.  PROCEDURE  Cantidad_Alumnos(GRADO VARCHAR2, OPCION VARCHAR2);
  28.  PROCEDURE  Materias_Impartidas(CODIGO INTEGER);
  29.  PROCEDURE  Orientadores_Grados;
  30.  PROCEDURE  Docente_Notas(CODIGO INTEGER, MAT VARCHAR2, GRAD VARCHAR2,
  31.  OPCION VARCHAR2, PERIDO VARCHAR2);
  32.  
  33. END CONSULTAS;
  34. /
  35.  
  36. CREATE OR REPLACE PACKAGE BODY CONSULTAS AS
  37.  
  38. PROCEDURE Responsables_Grado
  39. IS
  40. BEGIN
  41.  
  42. FOR  I IN  (SELECT D.NOMBRE || ' ' ||  D.APELLIDO AS NOMBRE ,G.NOMBRE AS GRADO  FROM DOCENTE D
  43.                    INNER JOIN ENCARGADOS_GRADO E ON D.CODDOCENTE=E.CODDOCENTE
  44.                   INNER JOIN GRADO G ON G.CODIGOGRADO=E.CODGRADO)  LOOP
  45.            
  46.                 DBMS_OUTPUT.PUT_LINE(' NOMBRE : ' || TO_CHAR(I.NOMBRE) ||  ' GRADO : '  || TO_CHAR(I.GRADO));
  47.            
  48.       END LOOP;
  49.  
  50.  
  51. END Responsables_Grado;
  52.  
  53. PROCEDURE Responsables_Grado(DESDE NUMBER, HASTA NUMBER)
  54. IS
  55. BEGIN
  56.  
  57. FOR  I IN  (SELECT D.NOMBRE || ' ' ||  D.APELLIDO AS NOMBRE ,G.NOMBRE AS GRADO  FROM DOCENTE D
  58.                    INNER JOIN ENCARGADOS_GRADO E ON D.CODDOCENTE=E.CODDOCENTE
  59.                   INNER JOIN GRADO G ON G.CODIGOGRADO=E.CODGRADO WHERE ROWNUM BETWEEN DESDE AND HASTA)  LOOP
  60.            
  61.                 DBMS_OUTPUT.PUT_LINE(' NOMBRE : ' || TO_CHAR(I.NOMBRE) ||  ' GRADO : '  || TO_CHAR(I.GRADO));
  62.            
  63.       END LOOP;
  64.  
  65. END Responsables_Grado;
  66.  
  67. PROCEDURE Responsables_Grados
  68. IS
  69. BEGIN
  70.  
  71. FOR  I IN  (SELECT D.NOMBRE || ' ' ||  D.APELLIDO AS NOMBRE ,G.NOMBRE AS GRADO ,S.SECCION AS SECCION ,EP.NOMBRE  AS OPCION   FROM DOCENTE D
  72.                 INNER JOIN ENCARGADOS_GRADO E ON D.CODDOCENTE=E.CODDOCENTE
  73.                 INNER JOIN GRADO G ON G.CODIGOGRADO=E.CODGRADO
  74.                 INNER JOIN SECCIONES S ON S.CODSECCION=E.CODSECCION
  75.                 INNER JOIN ESPECIALIDAD EP ON EP.CODESPECIALIDAD=E.CODESPECIALIDAD)  LOOP
  76.            
  77.                DBMS_OUTPUT.PUT_LINE(' NOMBRE : ' || TO_CHAR(I.NOMBRE) ||  ' GRADO : '  || TO_CHAR(I.GRADO)
  78.                ||  ' SECCION : '  || TO_CHAR(I.SECCION) ||  ' OPCION: '  || TO_CHAR(I.OPCION) );
  79.        
  80.            
  81.       END LOOP;
  82.  
  83. END Responsables_Grados;
  84.  
  85.  
  86. PROCEDURE Responsables_Grados(DESDE NUMBER, HASTA NUMBER)
  87. IS
  88. BEGIN
  89.  
  90. FOR  I IN  (SELECT D.NOMBRE || ' ' ||  D.APELLIDO AS NOMBRE ,G.NOMBRE AS GRADO ,S.SECCION AS SECCION ,EP.NOMBRE  AS OPCION   FROM DOCENTE D
  91.                 INNER JOIN ENCARGADOS_GRADO E ON D.CODDOCENTE=E.CODDOCENTE
  92.                 INNER JOIN GRADO G ON G.CODIGOGRADO=E.CODGRADO
  93.                 INNER JOIN SECCIONES S ON S.CODSECCION=E.CODSECCION
  94.                 INNER JOIN ESPECIALIDAD EP ON EP.CODESPECIALIDAD=E.CODESPECIALIDAD WHERE ROWNUM BETWEEN DESDE AND HASTA )  LOOP
  95.            
  96.                DBMS_OUTPUT.PUT_LINE(' NOMBRE : ' || TO_CHAR(I.NOMBRE) ||  ' GRADO : '  || TO_CHAR(I.GRADO)
  97.                ||  ' SECCION : '  || TO_CHAR(I.SECCION) ||  ' OPCION: '  || TO_CHAR(I.OPCION) );
  98.        
  99.            
  100.       END LOOP;
  101.  
  102. END Responsables_Grados;
  103.  
  104. PROCEDURE nasignaturas_docente
  105. IS
  106. BEGIN
  107.  
  108. FOR I IN (SELECT  D.NOMBRE AS NOMBRE,D.APELLIDO AS APELLIDO,  COUNT(*) AS IMPARTE  FROM DOCENTE D
  109. INNER JOIN CARGA_DOCENTE  CD ON D.CODDOCENTE=CD.CODDOCENTE
  110. GROUP BY D.NOMBRE,D.APELLIDO) LOOP
  111.  
  112.      DBMS_OUTPUT.PUT_LINE(' DOCENTE : ' || TO_CHAR(I.NOMBRE) ||' ' || TO_CHAR(I.APELLIDO)
  113.      ||  ' ASIGNATURAS IMPARTIDAS : '  || TO_CHAR(I.IMPARTE));
  114.  
  115.  
  116. END LOOP;
  117.  
  118.  
  119. END nasignaturas_docente;
  120.  
  121. PROCEDURE Docente_Materias(DOCENTE VARCHAR2,ANIO NUMBER)
  122. IS
  123. BEGIN
  124.  
  125. FOR  I IN  (SELECT M.NOMBRE AS MATERIA   FROM DOCENTE D
  126. INNER JOIN CARGA_DOCENTE CD ON D.CODDOCENTE=CD.CODDOCENTE
  127. INNER JOIN MATERIAS M ON M.CODMATERIA=CD.CODMATERIA
  128. WHERE D.NOMBRE=DOCENTE AND EXTRACT(YEAR FROM CD.ANIO_ASIGNACION)=ANIO)  LOOP
  129.            
  130.                DBMS_OUTPUT.PUT_LINE( TO_CHAR(I.MATERIA));
  131.        
  132.            
  133.       END LOOP;
  134.  
  135. END Docente_Materias;
  136.  
  137. PROCEDURE Alumnos_Matriculados
  138. IS
  139. BEGIN
  140. FOR  I IN (SELECT A.NOMBRE AS NOMBRE ,A.APELLIDO AS APELLIDO FROM ALUMNO A
  141. INNER JOIN MATRICULA M ON A.CODALUMNO=M.CODALUMNO
  142. WHERE   EXTRACT(YEAR FROM M.FECHA_MATRICULA) =EXTRACT(YEAR FROM SYSDATE) ORDER BY  A.NOMBRE ASC ) LOOP
  143.  
  144.         DBMS_OUTPUT.PUT_LINE( TO_CHAR(I.NOMBRE) || ' ' || TO_CHAR(I.APELLIDO));
  145.  
  146.  END LOOP;
  147.  
  148. END Alumnos_Matriculados;
  149.  
  150.  
  151. PROCEDURE Alumnos_Matriculados(DESDE NUMBER,HASTA NUMBER)
  152. IS
  153. BEGIN
  154. FOR  I IN (SELECT A.NOMBRE AS NOMBRE ,A.APELLIDO AS APELLIDO FROM ALUMNO A
  155. INNER JOIN MATRICULA M ON A.CODALUMNO=M.CODALUMNO
  156. WHERE   EXTRACT(YEAR FROM M.FECHA_MATRICULA) =EXTRACT(YEAR FROM SYSDATE) AND ROWNUM BETWEEN DESDE AND HASTA ORDER BY  A.NOMBRE ASC ) LOOP
  157.  
  158.         DBMS_OUTPUT.PUT_LINE( TO_CHAR(I.NOMBRE) || ' ' || TO_CHAR(I.APELLIDO));
  159.  
  160.  END LOOP;
  161.  
  162. END Alumnos_Matriculados;
  163.  
  164. PROCEDURE CantMatriculados_actual
  165. IS
  166. NUMERO_MATRICULADOS NUMBER;
  167. BEGIN
  168.     SELECT COUNT(*) INTO NUMERO_MATRICULADOS  FROM MATRICULA  M
  169.     WHERE  EXTRACT(YEAR FROM M.FECHA_MATRICULA) =EXTRACT(YEAR FROM SYSDATE);
  170.  
  171.      DBMS_OUTPUT.PUT_LINE(' CANTIDAD DE  ALUMNOS MATRICULADOS : ' || TO_CHAR(NUMERO_MATRICULADOS));
  172.  
  173.  
  174.  
  175. END CantMatriculados_actual;
  176.  
  177. PROCEDURE Alumnos_Sexo
  178. IS
  179. BEGIN
  180. FOR  I IN (SELECT  NOMBRE AS NOMBRE ,APELLIDO AS APELLIDO ,SEXO AS SEXO  FROM alumno ORDER BY SEXO ) LOOP
  181.  
  182.      DBMS_OUTPUT.PUT_LINE(TO_CHAR(I.NOMBRE) || ' ' || TO_CHAR(I.APELLIDO) || ' ' || TO_CHAR(I.SEXO));
  183.  
  184.  END LOOP;
  185.  
  186. END Alumnos_Sexo;
  187.  
  188. PROCEDURE CantMatriculados_sexo
  189. IS
  190. BEGIN
  191. FOR  I IN (SELECT SEXO AS SEXO, COUNT(*)  AS CANTIDAD FROM ALUMNO A
  192. INNER JOIN MATRICULA M  ON A.CODALUMNO =M.CODALUMNO
  193. WHERE  EXTRACT(YEAR FROM M.FECHA_MATRICULA) =EXTRACT(YEAR FROM SYSDATE) GROUP BY SEXO ) LOOP
  194.  
  195.      DBMS_OUTPUT.PUT_LINE(' SEXO : ' || TO_CHAR(I.SEXO) || ' CANTIDAD ' || TO_CHAR(I.CANTIDAD));
  196.  
  197.  END LOOP;
  198.  
  199. END CantMatriculados_sexo;
  200.  
  201. PROCEDURE ListaAlumnos_Grados(GRADO VARCHAR2,ESPECIALIDAD VARCHAR2,SECCION VARCHAR2)
  202. IS
  203.  
  204. CURSOR C_LISTADO IS (SELECT A.NOMBRE || ' ' || A.APELLIDO AS ALUMNO FROM ALUMNO A
  205. INNER JOIN MATRICULA M ON
  206. A.CODALUMNO=M.CODALUMNO INNER JOIN GRADO G  ON
  207. M.CODIGOGRADO=G.CODIGOGRADO INNER JOIN
  208. ESPECIALIDAD E ON M.CODESPECIALIDAD=E.CODESPECIALIDAD INNER JOIN
  209. SECCIONES S ON M.CODSECCION=S.CODSECCION WHERE G.NOMBRE=GRADO
  210. AND E.NOMBRE=ESPECIALIDAD AND S.SECCION=SECCION);
  211.  
  212. BEGIN
  213. FOR  I IN C_LISTADO LOOP
  214.  
  215.      DBMS_OUTPUT.PUT_LINE( TO_CHAR(I.ALUMNO));
  216.  
  217.  END LOOP;
  218.  
  219. END ListaAlumnos_Grados;
  220.  
  221. PROCEDURE  Notas_Materias(CODIGO INTEGER)
  222. IS
  223. CURSOR C_NOTAS IS (SELECT ALUMNO.CODALUMNO,
  224.   MATERIAS.NOMBRE AS MATERIA,
  225.   NOTAS.ACTIVIDAD,
  226.   NOTAS.LABORATORIO,
  227.   NOTAS.EXAMEN,
  228.   PERIODOS.PERIODOO
  229. FROM ALUMNO
  230. INNER JOIN NOTAS ON ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  231. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  232. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA WHERE alumno.codalumno=CODIGO);
  233. BEGIN
  234.  
  235. FOR I IN C_NOTAS LOOP
  236.  
  237.     DBMS_OUTPUT.PUT_LINE(' MATERIA : ' || TO_CHAR(I.MATERIA));
  238.     DBMS_OUTPUT.PUT_LINE(' ACTIVIDAD : ' || TO_CHAR(I.ACTIVIDAD));
  239.      DBMS_OUTPUT.PUT_LINE(' LABORATORIO : ' || TO_CHAR(I.LABORATORIO));
  240.       DBMS_OUTPUT.PUT_LINE(' EXAMEN: ' || TO_CHAR(I.EXAMEN));
  241.       DBMS_OUTPUT.PUT_LINE(' PERIODO : ' || TO_CHAR(I.PERIODOO));
  242. END LOOP;
  243.  
  244. END Notas_Materias;
  245.  
  246. PROCEDURE  Notas_Materias(CODIGO INTEGER,PERIODO INTEGER)
  247. IS
  248. CURSOR C_NOTAS IS (SELECT ALUMNO.CODALUMNO,
  249.   MATERIAS.NOMBRE AS MATERIA,
  250.   NOTAS.ACTIVIDAD,
  251.   NOTAS.LABORATORIO,
  252.   NOTAS.EXAMEN,
  253.   PERIODOS.PERIODOO
  254. FROM ALUMNO
  255. INNER JOIN NOTAS ON ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  256. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  257. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA WHERE alumno.codalumno= CODIGO AND NOTAS.CODPERIODO=PERIODO);
  258. BEGIN
  259.  
  260. FOR I IN C_NOTAS LOOP
  261.  
  262.     DBMS_OUTPUT.PUT_LINE(' MATERIA : ' || TO_CHAR(I.MATERIA));
  263.     DBMS_OUTPUT.PUT_LINE(' ACTIVIDAD : ' || TO_CHAR(I.ACTIVIDAD));
  264.      DBMS_OUTPUT.PUT_LINE(' LABORATORIO : ' || TO_CHAR(I.LABORATORIO));
  265.       DBMS_OUTPUT.PUT_LINE(' EXAMEN: ' || TO_CHAR(I.EXAMEN));
  266.       DBMS_OUTPUT.PUT_LINE(' PERIODO : ' || TO_CHAR(I.PERIODOO));
  267.  
  268. END LOOP;
  269.  
  270. END Notas_Materias;
  271.  
  272. PROCEDURE  Materias_Notas(CODIGOM INTEGER)
  273. IS
  274. CURSOR C_NOTAS IS (SELECT ALUMNO.CODALUMNO,
  275.   ALUMNO.APELLIDO || ' ' ||
  276.   ALUMNO.NOMBRE AS NOMBRE,
  277.   MATERIAS.NOMBRE AS MATERIA,
  278.   NOTAS.ACTIVIDAD,
  279.   NOTAS.LABORATORIO,
  280.   NOTAS.EXAMEN,
  281.   PERIODOS.PERIODOO
  282. FROM ALUMNO
  283. INNER JOIN NOTAS ON ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  284. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  285. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA WHERE MATERIAS.CODMATERIA=CODIGOM);
  286. BEGIN
  287.  
  288. FOR I IN C_NOTAS LOOP
  289.  
  290.    DBMS_OUTPUT.PUT_LINE(' CODIGO : ' || TO_CHAR(I.CODALUMNO) || ' ALUMNO : ' || TO_CHAR(I.NOMBRE));
  291.     DBMS_OUTPUT.PUT_LINE(' MATERIA : ' || TO_CHAR(I.MATERIA));
  292.     DBMS_OUTPUT.PUT_LINE(' ACTIVIDAD : ' || TO_CHAR(I.ACTIVIDAD));
  293.      DBMS_OUTPUT.PUT_LINE(' LABORATORIO : ' || TO_CHAR(I.LABORATORIO));
  294.       DBMS_OUTPUT.PUT_LINE(' EXAMEN: ' || TO_CHAR(I.EXAMEN));
  295.       DBMS_OUTPUT.PUT_LINE(' PERIODO : ' || TO_CHAR(I.PERIODOO));
  296.  
  297. END LOOP;
  298.  
  299. END Materias_Notas;
  300.  
  301. PROCEDURE  Notas_Grado(GRADO VARCHAR2, ESPECIALIDAD VARCHAR2,
  302. SECCION VARCHAR2)
  303. IS
  304. CURSOR C_NOTAS IS (SELECT ALUMNO.CODALUMNO,
  305.   ALUMNO.APELLIDO || ' ' ||
  306.   ALUMNO.NOMBRE AS NOMBRE,
  307.   MATERIAS.NOMBRE AS MATERIA,
  308.   NOTAS.ACTIVIDAD,
  309.   NOTAS.LABORATORIO,
  310.   NOTAS.EXAMEN,
  311.   PERIODOS.PERIODOO
  312.   FROM ALUMNO
  313. INNER JOIN MATRICULA ON ALUMNO.CODALUMNO = MATRICULA.CODALUMNO
  314. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = MATRICULA.CODESPECIALIDAD
  315. INNER JOIN GRADO ON GRADO.CODIGOGRADO = MATRICULA.CODIGOGRADO
  316. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = MATRICULA.CODSECCION
  317. INNER JOIN NOTAS ON ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  318. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA
  319. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  320. WHERE grado.nombre=GRADO AND especialidad.nombre=ESPECIALIDAD AND secciones.seccion=SECCION );
  321. BEGIN
  322.  
  323. FOR I IN C_NOTAS LOOP
  324.  
  325.    DBMS_OUTPUT.PUT_LINE(' CODIGO : ' || TO_CHAR(I.CODALUMNO) || ' ALUMNO : ' || TO_CHAR(I.NOMBRE));
  326.     DBMS_OUTPUT.PUT_LINE(' MATERIA : ' || TO_CHAR(I.MATERIA));
  327.     DBMS_OUTPUT.PUT_LINE(' ACTIVIDAD : ' || TO_CHAR(I.ACTIVIDAD));
  328.      DBMS_OUTPUT.PUT_LINE(' LABORATORIO : ' || TO_CHAR(I.LABORATORIO));
  329.       DBMS_OUTPUT.PUT_LINE(' EXAMEN: ' || TO_CHAR(I.EXAMEN));
  330.       DBMS_OUTPUT.PUT_LINE(' PERIODO : ' || TO_CHAR(I.PERIODOO));
  331.  
  332. END LOOP;
  333.  
  334. END Notas_Grado;
  335.  
  336. PROCEDURE  Cuadro_Notas(GRADO VARCHAR2, ESPECIALIDAD VARCHAR2,
  337. SECCION VARCHAR2, MAT VARCHAR2, PERIDO VARCHAR2)
  338. IS
  339. CURSOR C_NOTAS IS (SELECT ALUMNO.CODALUMNO,
  340.   ALUMNO.APELLIDO || ' ' ||
  341.   ALUMNO.NOMBRE AS NOMBRE,
  342.   MATERIAS.NOMBRE AS MATERIA,
  343.   NOTAS.ACTIVIDAD,
  344.   NOTAS.LABORATORIO,
  345.   NOTAS.EXAMEN,
  346.   PERIODOS.PERIODOO
  347. FROM ALUMNO
  348. INNER JOIN MATRICULA ON ALUMNO.CODALUMNO = MATRICULA.CODALUMNO
  349. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = MATRICULA.CODESPECIALIDAD
  350. INNER JOIN GRADO ON GRADO.CODIGOGRADO = MATRICULA.CODIGOGRADO
  351. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = MATRICULA.CODSECCION
  352. INNER JOIN NOTAS ON ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  353. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA
  354. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  355. WHERE grado.nombre=GRADO AND especialidad.nombre=ESPECIALIDAD
  356.   AND secciones.seccion=SECCION AND materias.nombre=MAT AND periodos.periodoo=PERIDO);
  357. BEGIN
  358.  
  359. FOR I IN C_NOTAS LOOP
  360.  
  361.    DBMS_OUTPUT.PUT_LINE(' CODIGO : ' || TO_CHAR(I.CODALUMNO) || ' ALUMNO : ' || TO_CHAR(I.NOMBRE));
  362.     DBMS_OUTPUT.PUT_LINE(' MATERIA : ' || TO_CHAR(I.MATERIA));
  363.     DBMS_OUTPUT.PUT_LINE(' ACTIVIDAD : ' || TO_CHAR(I.ACTIVIDAD));
  364.      DBMS_OUTPUT.PUT_LINE(' LABORATORIO : ' || TO_CHAR(I.LABORATORIO));
  365.       DBMS_OUTPUT.PUT_LINE(' EXAMEN: ' || TO_CHAR(I.EXAMEN));
  366.       DBMS_OUTPUT.PUT_LINE(' PERIODO : ' || TO_CHAR(I.PERIODOO));
  367.  
  368. END LOOP;
  369.  
  370. END Cuadro_Notas;
  371.  
  372. PROCEDURE  Alumnos_Sexo(SEX VARCHAR2, OPCION VARCHAR2)
  373. IS
  374. CURSOR C_LISTADO IS (SELECT ALUMNO.CODALUMNO,
  375.   ALUMNO.APELLIDO || ' ' ||
  376.   ALUMNO.NOMBRE AS NOMBRE,
  377.   ALUMNO.SEXO
  378. FROM ALUMNO
  379. INNER JOIN NOTAS ON ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  380. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  381. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA
  382. INNER JOIN MATRICULA ON ALUMNO.CODALUMNO = MATRICULA.CODALUMNO
  383. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = MATRICULA.CODSECCION
  384. INNER JOIN GRADO ON GRADO.CODIGOGRADO = MATRICULA.CODIGOGRADO
  385. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = MATRICULA.CODESPECIALIDAD
  386. WHERE ALUMNO.SEXO=SEX AND ESPECIALIDAD.NOMBRE=OPCION);
  387. BEGIN
  388.  
  389. FOR I IN C_LISTADO LOOP
  390.  
  391.    DBMS_OUTPUT.PUT_LINE( ' ALUMNO : ' || TO_CHAR(I.NOMBRE) || ' SEXO : ' || TO_CHAR(I.SEXO) );
  392.  
  393.    
  394.  
  395. END LOOP;
  396.  
  397. END Alumnos_Sexo;
  398.  
  399.  PROCEDURE  Cantidad_Alumnos
  400. IS
  401. CURSOR C_CANTIDAD IS (SELECT COUNT(*) AS CANTIDAD
  402. FROM ALUMNO
  403. INNER JOIN MATRICULA ON ALUMNO.CODALUMNO = MATRICULA.CODALUMNO
  404. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = MATRICULA.CODSECCION
  405. INNER JOIN GRADO ON GRADO.CODIGOGRADO = MATRICULA.CODIGOGRADO
  406. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = MATRICULA.CODESPECIALIDAD);
  407. BEGIN
  408.  
  409. FOR I IN C_CANTIDAD LOOP
  410.  
  411.    DBMS_OUTPUT.PUT_LINE(TO_CHAR(I.CANTIDAD) );
  412.  
  413.    
  414. END LOOP;
  415.  
  416. END Cantidad_Alumnos;
  417.  
  418. PROCEDURE  Cantidad_Alumnos(GRADO VARCHAR2, OPCION VARCHAR2)
  419. IS
  420. CURSOR C_CANTIDAD IS (SELECT COUNT(*) AS CANTIDAD
  421. FROM ALUMNO
  422. INNER JOIN MATRICULA ON ALUMNO.CODALUMNO = MATRICULA.CODALUMNO
  423. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = MATRICULA.CODSECCION
  424. INNER JOIN GRADO ON GRADO.CODIGOGRADO = MATRICULA.CODIGOGRADO
  425. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = MATRICULA.CODESPECIALIDAD
  426. WHERE grado.nombre=GRADO AND ESPECIALIDAD.NOMBRE=OPCION);
  427. BEGIN
  428.  
  429. FOR I IN C_CANTIDAD LOOP
  430.  
  431.    DBMS_OUTPUT.PUT_LINE(TO_CHAR(I.CANTIDAD) );
  432.  
  433.    
  434. END LOOP;
  435.  
  436. END Cantidad_Alumnos;
  437.  
  438. PROCEDURE  Materias_Impartidas(CODIGO INTEGER)
  439. IS
  440. CURSOR C_MATERIAS IS (SELECT
  441.    MATERIAS.NOMBRE AS MATERIA,
  442.   GRADO.NOMBRE AS GRADO,
  443.   ESPECIALIDAD.NOMBRE AS ESPECIALIDAD,
  444.   SECCIONES.SECCION
  445. FROM DOCENTE
  446. INNER JOIN CARGA_DOCENTE ON DOCENTE.CODDOCENTE = CARGA_DOCENTE.CODDOCENTE
  447. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = CARGA_DOCENTE.CODSECCION
  448. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = CARGA_DOCENTE.CODESPECIALIDAD
  449. INNER JOIN GRADO ON GRADO.CODIGOGRADO = CARGA_DOCENTE.CODGRADO
  450. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = CARGA_DOCENTE.CODMATERIA
  451. WHERE docente.coddocente=CODIGO);
  452. BEGIN
  453.  
  454. FOR I IN C_MATERIAS LOOP
  455.  
  456.    DBMS_OUTPUT.PUT_LINE(' MATERIA : ' || TO_CHAR(I.MATERIA) || ' GRADO : ' || TO_CHAR(I.GRADO) ||
  457.    ' ESPECIALIDAD : ' || TO_CHAR(I.ESPECIALIDAD) || ' SECCION : ' || TO_CHAR(I.SECCION));
  458.  
  459.    
  460. END LOOP;
  461.  
  462. END  Materias_Impartidas;
  463.  
  464. PROCEDURE  Orientadores_Grados
  465. IS
  466. CURSOR C_DOCENTE IS (SELECT DOCENTE.NOMBRE || ' '  ||
  467.   DOCENTE.APELLIDO AS NOMBRE,
  468.   GRADO.NOMBRE AS GRADO,
  469.   ESPECIALIDAD.NOMBRE AS ESPECIALIDAD,
  470.   SECCIONES.SECCION
  471. FROM DOCENTE
  472. INNER JOIN ENCARGADOS_GRADO ON DOCENTE.CODDOCENTE = ENCARGADOS_GRADO.CODDOCENTE
  473. INNER JOIN GRADO ON GRADO.CODIGOGRADO = ENCARGADOS_GRADO.CODGRADO
  474. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD = ENCARGADOS_GRADO.CODESPECIALIDAD
  475. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = ENCARGADOS_GRADO.CODSECCION);
  476. BEGIN
  477.  
  478. FOR I IN C_DOCENTE LOOP
  479.  
  480.    DBMS_OUTPUT.PUT_LINE(' DOCENTE : ' || TO_CHAR(I.NOMBRE) || ' GRADO : ' || TO_CHAR(I.GRADO) ||
  481.    ' ESPECIALIDAD : ' || TO_CHAR(I.ESPECIALIDAD) || ' SECCION : ' || TO_CHAR(I.SECCION));
  482.  
  483.    
  484. END LOOP;
  485.  
  486. END Orientadores_Grados;
  487.  
  488.  PROCEDURE  Docente_Notas(CODIGO INTEGER, MAT VARCHAR2, GRAD VARCHAR2,
  489. OPCION VARCHAR2, PERIDO VARCHAR2)
  490. IS
  491. CURSOR C_NOTAS IS (SELECT
  492.   ALUMNO.NOMBRE || ' ' ||
  493.   ALUMNO.APELLIDO AS NOMBRE,
  494.   NOTAS.ACTIVIDAD,
  495.   NOTAS.LABORATORIO,
  496.   NOTAS.EXAMEN,
  497.   GRADO.NOMBRE AS GRADO,
  498.   ESPECIALIDAD.NOMBRE AS ESPECIALIDAD,
  499.   SECCIONES.SECCION,
  500.   PERIODOS.PERIODOO AS PERIODO,
  501.   MATERIAS.NOMBRE AS MATERIA
  502. FROM DOCENTE
  503. INNER JOIN CARGA_DOCENTE ON DOCENTE.CODDOCENTE = CARGA_DOCENTE.CODDOCENTE
  504. INNER JOIN MATERIAS ON MATERIAS.CODMATERIA = CARGA_DOCENTE.CODMATERIA
  505. INNER JOIN NOTAS ON MATERIAS.CODMATERIA = NOTAS.CODMATERIA
  506. INNER JOIN PERIODOS ON PERIODOS.CODPERIODO = NOTAS.CODPERIODO
  507. INNER JOIN SECCIONES ON SECCIONES.CODSECCION = CARGA_DOCENTE.CODSECCION
  508. INNER JOIN MATRICULA ON SECCIONES.CODSECCION = MATRICULA.CODSECCION
  509. INNER JOIN ALUMNO ON ALUMNO.CODALUMNO  = MATRICULA.CODALUMNO
  510. AND ALUMNO.CODALUMNO = NOTAS.CODALUMNO
  511. INNER JOIN GRADO ON GRADO.CODIGOGRADO  = CARGA_DOCENTE.CODGRADO
  512. AND GRADO.CODIGOGRADO = MATRICULA.CODIGOGRADO
  513. INNER JOIN ESPECIALIDAD ON ESPECIALIDAD.CODESPECIALIDAD  = CARGA_DOCENTE.CODESPECIALIDAD
  514. AND ESPECIALIDAD.CODESPECIALIDAD = MATRICULA.CODESPECIALIDAD
  515. WHERE DOCENTE.CODDOCENTE=CODIGO AND MATERIAS.NOMBRE=MAT AND GRADO.NOMBRE=GRAD
  516.     AND especialidad.nombre=OPCION AND periodos.periodoo=PERIDO);
  517. BEGIN
  518.  
  519. FOR I IN C_NOTAS LOOP
  520.  
  521.    DBMS_OUTPUT.PUT_LINE(' ALUMNO : ' || TO_CHAR(I.NOMBRE) || ' ACTIVIDAD : ' || TO_CHAR(I.ACTIVIDAD) ||
  522.    ' LABORATORIO : ' || TO_CHAR(I.LABORATORIO) || ' EXAMEN : ' || TO_CHAR(I.EXAMEN) || ' ESPECIALIDAD : ' ||
  523.     TO_CHAR(I.ESPECIALIDAD) || ' SECCION : ' || TO_CHAR(I.SECCION) || ' PERIODO : ' || TO_CHAR(I.PERIODO) ||
  524.     ' MATERIA : ' || TO_CHAR(I.MATERIA));
  525.  
  526.    
  527. END LOOP;
  528.  
  529. END Docente_Notas;
  530.  
  531. END CONSULTAS;
  532. /
  533.  
  534.  
  535. /* LLAMADA A SP PAQUETE CONSULTAS */
  536.  
  537. /*  1. LISTAR LOS DOCENTES Y  GRADO   EN EL CUAL ES RESPONSABLE */
  538. CALL CONSULTAS.Responsables_Grado();
  539. CALL CONSULTAS.Responsables_Grado(1,10); /*CON LIMIT DE FILAS */
  540.  
  541. /* 2.  LISTAR DOCENTES, CON SU RESPECTIVO GRADO,SECCION,ESPECIALIDAD EN EL CUAL ES RESPONSABLE */
  542. CALL CONSULTAS.Responsables_Grados();
  543. CALL CONSULTAS.Responsables_Grados(1,10);
  544.  
  545. /* 3.  Mostrar el Numero  de Asignaturas impartidas por  cada Docente */
  546. CALL CONSULTAS.nasignaturas_docente();
  547.  
  548. /* 4.  MOSTAR EL LISTADO DE MATERIAS ASIGNADAS AL DOCENTE MARCOS ANTONIO EN EL AÑO 2012 */
  549. CALL CONSULTAS.Docente_Materias('MARCOS ANTONIO',2012);
  550.  
  551. /* 5. LISTAR LOS NOMBRES Y APELLIDOS DE LOS ALUMNOS  MATRICULADOS EN EL AÑO ACTUAL */
  552. CALL CONSULTAS.Alumnos_Matriculados();
  553. CALL CONSULTAS.Alumnos_Matriculados(1,30);
  554.  
  555. /* 6.  MOSTAR EL NUMERO DE ALUMNOS MATRICULADOS EN EL AÑO ACTUAL */
  556. CALL CONSULTAS.CantMatriculados_actual();
  557.  
  558. /* 7. Mostrar los Alumnos Ordenados por SEXO */
  559. CALL CONSULTAS.Alumnos_Sexo();
  560.  
  561. /* 8.Mostar la Cantidad de Alumnos Matriculados  en el Año Actual  que sean del Sexo Femenino y Masculino */
  562. CALL CONSULTAS.CantMatriculados_sexo();
  563.  
  564. /* 9 LISTAR TODOS LOS AUMNOS QUE PERTENESCAN A PRIMER AÑO DE BACHILLERATO CON ESPECIALIDAD
  565. EN ASISTENCIA CONTABLE Y PERTENEZCAN ALA SECCION A */
  566. CALL CONSULTAS.ListaAlumnos_Grados('PRIMERO','ASISTENCIA CONTABLE','A');
  567.  
  568. /* 10 MUESTRA TODAS NOTAS DE MATERIAS  POR CODIGO DE ALUMNO */
  569. CALL CONSULTAS.Notas_Materias(1);
  570.  
  571. /* 11 MUESTRA NOTAS DE MATERIAS POR CODIGO DE ALUMNO Y POR PERIODO */
  572. CALL CONSULTAS.Notas_Materias(1,1);
  573.  
  574. /* 12  MUESTRA LAS NOTAS DE TODOS LOS ALUMNOS EN BASE AL CODIGO DE LA MATERIA */
  575. CALL CONSULTAS.Materias_Notas(1);
  576.  
  577. /* 13. NOTAS POR GRADO, ESPECIALIDAD  Y SECCION*/
  578. CALL CONSULTAS.Notas_Grado('SEGUNDO','ASISTENCIA CONTABLE','A');
  579.  
  580. /* 14. CUADRO DE NOTAS POR MATERIA, GRADO SECCION Y PERIODO */
  581. CALL CONSULTAS.Cuadro_Notas('PRIMERO','ASISTENCIA CONTABLE','A','LENGUAJE','I');
  582.  
  583. /* 15. ALUMNOS POR SEXO Y ESPECIALIDAD */
  584. CALL CONSULTAS.Alumnos_Sexo('M','ASISTENCIA CONTABLE');
  585.  
  586. /* 16. Cuantos alumnos hay matriculados */
  587. CALL CONSULTAS.Cantidad_Alumnos();
  588.  
  589. /* 17. CUANTOS ALUMNOS HAY EN DETERMINADO GRADO Y ESPECIALIDAD */
  590. CALL CONSULTAS.Cantidad_Alumnos('PRIMERO','ASISTENCIA CONTABLE');
  591.  
  592. /* 18. MATERIAS QUE IMPARTE EL DOCENTE POR GRADO, ESPECIALIDAD Y SECCION  */
  593. CALL CONSULTAS.Materias_Impartidas(1);
  594.  
  595. /* 19. MUESTRA LOS PROFESORES ORIENTADORES DE LOS GRADOS POR GRADO, ESPECIALIDAD Y SECCION */
  596. CALL CONSULTAS.Orientadores_Grados();
  597.  
  598. /* 20. MUESTRA LOS NOMBRES Y NOTAS DE ALUMNOS QUE DETERMINADO PROFESOR LES DA POR GRADO, ESPECIALIDAD, SECCION Y MATERIA */
  599. CALL CONSULTAS.Docente_Notas(2,'LENGUAJE','SEGUNDO','TURISMO','I');
  600.  
  601.  
  602.  
  603. /* PAQUETE MANTENIMIENTO (UPDATE, DELETE) */
  604.  
  605. CREATE OR REPLACE PACKAGE MANTENIMIENTO AS
  606.  
  607. PROCEDURE UPDATE_ALUMNO(CODIGO INTEGER,NOMB VARCHAR2,APELL VARCHAR2,
  608. FECNAC DATE,SEX VARCHAR2,DOMI VARCHAR2,RESPONSABLE VARCHAR2,TEL NUMBER);
  609.  
  610. PROCEDURE UPDATE_MATRICULA(CODIGO INTEGER,GRADO NUMBER,SECCION NUMBER,
  611. ESPECIALIDAD NUMBER);
  612.  
  613. PROCEDURE UPDATE_GRADO(CODIGO INTEGER,GRDO VARCHAR2);
  614.  
  615. PROCEDURE UPDATE_SECCION(CODIGO INTEGER,NOMBRE VARCHAR2);
  616.  
  617. PROCEDURE UPDATE_MATERIAS(CODIGO INTEGER, MATERIA VARCHAR2);
  618.  
  619. PROCEDURE UPDATE_PERIODO(CODIGO INTEGER,PERODO VARCHAR2);
  620.  
  621. PROCEDURE UPDATE_OPCION(CODIGO INTEGER,ESPECIALIDA VARCHAR2);
  622.  
  623. PROCEDURE UPDATE_DOCENTE(CODIGO INTEGER,NOMB VARCHAR2,APELL VARCHAR,FECNAC DATE,
  624. SEX VARCHAR2,DOMI VARCHAR2,TEL NUMBER);
  625.  
  626. PROCEDURE UPDATE_CARGADOCENT(CODIGO INTEGER,MATERIA INTEGER,GRADO INTEGER,
  627. ESPECIALIDAD INTEGER,SECCION INTEGER);
  628.  
  629. PROCEDURE UPDATE_ENCARGADOGRDO(CODIGO INTEGER,GRADO INTEGER,SECCION INTEGER,
  630. ESPECIALIDAD INTEGER);
  631.  
  632. PROCEDURE UPDATE_NOTAS(ID_FILA INTEGER,ACT NUMBER,LAB NUMBER,
  633. EXAM NUMBER, PERIODO INTEGER);
  634.  
  635. PROCEDURE DELETE_ALUMNO(CODIGO INTEGER);
  636.  
  637. PROCEDURE DELETE_MATRICULA(CODIGO INTEGER);
  638.  
  639. PROCEDURE DELETE_GRADO(CODIGO INTEGER);
  640.  
  641. PROCEDURE DELETE_SECCION(CODIGO INTEGER);
  642.  
  643. PROCEDURE DELETE_OPCION(CODIGO INTEGER);
  644.  
  645. PROCEDURE DELETE_MATERIA(CODIGO INTEGER);
  646.  
  647. PROCEDURE DELETE_PERIODO(CODIGO INTEGER);
  648.  
  649. PROCEDURE DELETE_DOCENTE(CODIGO INTEGER);
  650.  
  651. PROCEDURE DELETE_CARGA(ID_FILA INTEGER);
  652.  
  653. PROCEDURE DELETE_ENCARGADO(ID_FILA INTEGER);
  654.  
  655. PROCEDURE DELETE_NOTAS(ID_FILA INTEGER);
  656.  
  657. END MANTENIMIENTO;
  658. /
  659.  
  660. CREATE OR REPLACE PACKAGE BODY MANTENIMIENTO AS
  661.  
  662. PROCEDURE UPDATE_ALUMNO(CODIGO INTEGER,NOMB VARCHAR2,APELL VARCHAR2,
  663. FECNAC DATE,SEX VARCHAR2,DOMI VARCHAR2,RESPONSABLE VARCHAR2,TEL NUMBER)
  664.  IS
  665.  BEGIN
  666.         UPDATE ALUMNO SET NOMBRE=NOMB,APELLIDO=APELL,FECHA_NACIMIENTO=FECNAC,
  667.         SEXO=SEX,DOMICILIO=DOMI,ENCARGADO=RESPONSABLE,TELEFONO=TEL WHERE    CODALUMNO=CODIGO;
  668.  
  669. END UPDATE_ALUMNO;
  670.  
  671. PROCEDURE UPDATE_MATRICULA(CODIGO INTEGER,GRADO NUMBER,SECCION NUMBER,
  672. ESPECIALIDAD NUMBER)
  673. IS
  674. BEGIN
  675.     UPDATE MATRICULA SET CODIGOGRADO=GRADO,CODSECCION=SECCION,
  676.     CODESPECIALIDAD=ESPECIALIDAD WHERE CODALUMNO=CODIGO;
  677.  
  678.  
  679. END UPDATE_MATRICULA;
  680.  
  681. PROCEDURE UPDATE_GRADO(CODIGO INTEGER,GRDO VARCHAR2)
  682. IS
  683. BEGIN
  684.         UPDATE GRADO SET NOMBRE=GRDO WHERE CODIGOGRADO=CODIGO;
  685.  
  686.  
  687.  
  688. END UPDATE_GRADO;
  689.  
  690. PROCEDURE UPDATE_SECCION(CODIGO INTEGER,NOMBRE VARCHAR2)
  691. IS
  692. BEGIN
  693.         UPDATE SECCIONES SET SECCION=NOMBRE WHERE CODSECCION=CODIGO;
  694.  
  695. END UPDATE_SECCION;
  696.  
  697. PROCEDURE UPDATE_MATERIAS(CODIGO INTEGER, MATERIA VARCHAR2)
  698. IS
  699. BEGIN
  700.         UPDATE MATERIAS SET NOMBRE=MATERIA WHERE CODMATERIA=CODIGO;
  701.  
  702. END UPDATE_MATERIAS;
  703.  
  704. PROCEDURE UPDATE_PERIODO(CODIGO INTEGER,PERODO VARCHAR2)
  705. IS
  706. BEGIN
  707.         UPDATE PERIODOS SET PERIODOO=PERODO WHERE CODPERIODO=CODIGO;
  708.  
  709. END UPDATE_PERIODO;
  710.  
  711. PROCEDURE UPDATE_OPCION(CODIGO INTEGER,ESPECIALIDA VARCHAR2)
  712. IS
  713. BEGIN
  714.         UPDATE ESPECIALIDAD SET NOMBRE=ESPECIALIDA WHERE CODESPECIALIDAD=CODIGO;
  715.  
  716. END UPDATE_OPCION;
  717.  
  718. PROCEDURE UPDATE_DOCENTE(CODIGO INTEGER,NOMB VARCHAR2,APELL VARCHAR,FECNAC DATE,
  719. SEX VARCHAR2,DOMI VARCHAR2,TEL NUMBER)
  720. IS
  721. BEGIN
  722.         UPDATE DOCENTE SET NOMBRE=NOMB,APELLIDO=APELL,FECHA_NACIMIENTO=FECNAC,
  723.         SEXO=SEX,DOMICILIO=DOMI,TELEFONO=TEL WHERE CODDOCENTE=CODIGO;
  724.  
  725. END UPDATE_DOCENTE;
  726.  
  727. PROCEDURE UPDATE_CARGADOCENT(CODIGO INTEGER,MATERIA INTEGER,GRADO INTEGER,
  728. ESPECIALIDAD INTEGER,SECCION INTEGER)
  729. IS
  730. BEGIN
  731.         UPDATE CARGA_DOCENTE SET CODGRADO=GRADO,CODESPECIALIDAD=ESPECIALIDAD,
  732.         CODSECCION=SECCION WHERE CODDOCENTE=CODIGO AND CODMATERIA=MATERIA;
  733.  
  734. END UPDATE_CARGADOCENT;
  735.  
  736. PROCEDURE UPDATE_ENCARGADOGRDO(CODIGO INTEGER,GRADO INTEGER,SECCION INTEGER,
  737. ESPECIALIDAD INTEGER)
  738. IS
  739. BEGIN
  740.         UPDATE ENCARGADOS_GRADO SET CODGRADO=GRADO,CODSECCION=SECCION,
  741.         CODESPECIALIDAD=ESPECIALIDAD WHERE CODDOCENTE=CODIGO;
  742.        
  743. END UPDATE_ENCARGADOGRDO;
  744.  
  745. PROCEDURE UPDATE_NOTAS(ID_FILA INTEGER,ACT NUMBER,LAB NUMBER,
  746. EXAM NUMBER, PERIODO INTEGER)
  747. IS
  748. BEGIN
  749.         UPDATE NOTAS SET ACTIVIDAD=ACT,LABORATORIO=LAB,EXAMEN=EXAM,CODPERIODO=PERIODO
  750.         WHERE ID=ID_FILA;
  751.  
  752. END UPDATE_NOTAS;
  753.  
  754. PROCEDURE DELETE_ALUMNO(CODIGO INTEGER)
  755. IS
  756. BEGIN
  757.         DELETE FROM ALUMNO WHERE CODALUMNO=CODIGO;
  758.  
  759. END DELETE_ALUMNO;
  760.  
  761. PROCEDURE DELETE_MATRICULA(CODIGO INTEGER)
  762. IS
  763. BEGIN
  764.         DELETE FROM MATRICULA WHERE CODALUMNO=CODIGO;
  765.  
  766. END DELETE_MATRICULA;
  767.  
  768. PROCEDURE DELETE_GRADO(CODIGO INTEGER)
  769. IS
  770. BEGIN
  771.         DELETE FROM GRADO WHERE CODIGOGRADO=CODIGO;
  772.  
  773. END DELETE_GRADO;
  774.  
  775. PROCEDURE DELETE_SECCION(CODIGO INTEGER)
  776. IS
  777. BEGIN
  778.         DELETE FROM SECCIONES WHERE CODSECCION=CODIGO;
  779.  
  780. END DELETE_SECCION;
  781.  
  782. PROCEDURE DELETE_OPCION(CODIGO INTEGER)
  783. IS
  784. BEGIN
  785.         DELETE FROM ESPECIALIDAD WHERE CODESPECIALIDAD=CODIGO;
  786.  
  787. END DELETE_OPCION;
  788.  
  789. PROCEDURE DELETE_MATERIA(CODIGO INTEGER)
  790. IS
  791. BEGIN
  792.         DELETE FROM MATERIAS WHERE CODMATERIA=CODIGO;
  793.        
  794. END DELETE_MATERIA;
  795.  
  796. PROCEDURE DELETE_PERIODO(CODIGO INTEGER)
  797. IS
  798. BEGIN
  799.         DELETE FROM PERIODOS WHERE CODPERIODO=CODIGO;
  800.        
  801. END DELETE_PERIODO;
  802.  
  803. PROCEDURE DELETE_DOCENTE(CODIGO INTEGER)
  804. IS
  805. BEGIN
  806.         DELETE FROM DOCENTE WHERE CODDOCENTE=CODIGO;
  807.  
  808. END DELETE_DOCENTE;
  809.  
  810. PROCEDURE DELETE_CARGA(ID_FILA INTEGER)
  811. IS
  812. BEGIN
  813.         DELETE FROM CARGA_DOCENTE WHERE ID=ID_FILA;
  814.        
  815.  
  816. END DELETE_CARGA;
  817.  
  818. PROCEDURE DELETE_ENCARGADO(ID_FILA INTEGER)
  819. IS
  820. BEGIN
  821.         DELETE FROM ENCARGADOS_GRADO WHERE ID=ID_FILA;
  822.  
  823. END DELETE_ENCARGADO;
  824.  
  825. PROCEDURE DELETE_NOTAS(ID_FILA INTEGER)
  826. IS
  827. BEGIN
  828.         DELETE FROM NOTAS WHERE ID=ID_FILA;
  829.  
  830. END DELETE_NOTAS;
  831.  
  832.  
  833. END MANTENIMIENTO;
  834. /
Advertisement
Add Comment
Please, Sign In to add comment