Bievenido

Bienvenido al Blog de Herman Aguilar!!!

Dedicado a compartir material para los alumnos de UJAT-DAIS

lunes, 3 de abril de 2017

Ejercicio segundo parcial de Modelado

Para el viernes 7 de abril en su carpeta personal del DropBox deben de colocar:


Por cada tabla de sus modelo, un archivo con el siguiente nombre: nombretabla_iud.txt que debe de contener:

5 puntos de calificación

  • 5 inserts para catálogo, 10 para tablas de producción (ventas, contratos, etc) y 20 para las tablas hijas de las tablas de producción (ventas_productos, etc.)
  •  3 updates
  • 1 delete 

5 puntos de calificación

Además por cada CONSTRAINT se debe escribir una sentencia (insert, update o delelete) que intente alterar el estado de la base de datos, pero que genere error, se debe describir porque se esta generando el error y cual sería la solución o recomendación para el usuario.


Es altamente recomendable que las sentencias sean ejecutas en la base de datos utilizando el sqldeveloper.


Aunque estén trabajando en equipo y tengan el mismo modelo, cada quién debe de realizar sus ejercicios y entregar de forma individual.




lunes, 13 de marzo de 2017

Ejemplo de procedimiento ABC

create or replace PROCEDURE LINEAS_ABC 
(
  P_OP IN NUMBER 
, P_VALIDO OUT NUMBER 
, P_ERROR OUT VARCHAR2 
, P_LINEA_ID IN OUT NUMBER 
, P_NOMBRE IN OUT VARCHAR2 
) AS 
BEGIN
--LIMPIANDO Y validando
  p_nombre:= upper(trim(p_nombre));

  if P_OP=1 then
  
     p_linea_id:= sec_lineas.nextval;
  
     insert into lineas(linea_id,nombre)values
           (p_linea_id,p_nombre);
  end if;
  
   if P_OP=2 then--ACTUALIZANDO
        update lineas set  nombre=p_nombre where linea_id=p_linea_id;
  end if;
  
  if P_OP=3 then--BORRANDO
       delete from lineas  where linea_id=p_linea_id;
  end if;
  
  p_valido:=1;
  
  exception
  
  when others then
    p_valido:=0;
    p_error :='Ocurrió un error '||sqlcode||' '||sqlerrm;
    
  
END LINEAS_ABC;


Los cambios fueron:
1. Todos los parámetros correspondientes a la tabla deben ser de tipo out.
2. Después del begin se agrego la sección de limpieza y validación, un ejemplo de validación:
   if p_precio <0 then
      p_valido:=0;
      p_error:='Precio no válido';
      return;
  end if;
3. Se modificó el update para no cambiar la llave primaria, todos los demás campos si pueden cambiar.
4. En el insert se agrego el uso de una secuencia, en este ejemplo sec_lineas, hay que crear una secuencia por cada tabla.
5.  Se agregó la sección Exception para el manejo de excepciones o errores.

lunes, 3 de octubre de 2016

Conexión a la base de datos

Les recuerdo los datos para conectarse a la base de dato Oracle

Ip: 148.236.64.67
Puerto : 1521
Sid: orcl

**********************************************************************

Para consultar usuario y contraseña de alumnos y docentes usarán en la base de datos oracle
Usuario: A162HCONSULTA
Contraseña: consulta

Fuciones auntenticar_alumno y auntenticar_profesor

ejemplo de uso: select auntenticar_alumno('162H1001','123') as valido from dual
resultado: 1JUAN LOPEZ LOPEZ  en caso de ser valido
                0 si no es valido

************************************************************************
Este es una muestra desde netbeans con java, previa carga del jdbc



Este desde sqldeveloper
regularmente .net trae driver para conectar a Oracle

Este desde c# de .net

Proyecto

Portada
Capítulo I Generalidades
·         Antecedentes
·         Planteamiento del problema
o   Definición
o   Delimitación (funcional)
§  Alcances
§  Limitaciones
·         Objetivos
o   General
o   Objetivos específicos
·         Justificación
·         Metodología (investigación)
Capítulo II Marco Teórico
§  Marco conceptual
§  Marco tecnológico
§  Marco legal
Capítulo III Desarrollo (código, interfaces, modelo de bd, esquema, script, etc)
Capítulo IV Pruebas y resultados
Bibliografía

***************************************************************
Nombre del proyecto en carpeta Dropbox
AguilarMayoHerman.docx

Entrega
AguilarMayoHerman20161006.docx


Todos los módulos deben de tener validación de usuario y contraseña (encriptadas).
Realizar el diseño de la base de datos.
Realizar cuando menos una actividad en interfaz gráfica.
Considerar base de datos aislada, hacer un diseño que luego será sustituido por datos remotos.
Cada módulo debe acceder cuando menos a otro módulo.

Investigar permisos, enlaces y respaldo en sus bases de datos.