domingo, 22 de mayo de 2011

Codigo Oracle AMIGOS Y CERVEZA

 SE CREA LA TABLA AMIGO. ENCABEZADO CON CREATE, LOS ATRIBUTOS Y SUS TIPOS. LA LINEA QUE DICE CONSTRAINT AMIGO ... SE SEÑALA IDAMIGO COMO LA PK
CREATE TABLE AMIGO
 (
   IDAMIGO NUMBER,
   NOMBRE VARCHAR2(30),
   APELLIDO VARCHAR2(30),
   TELEFONO NUMBER,
   EMAIL VARCHAR2(50),
   TWITTER VARCHAR2(30),
   FECHANACIMIENTO DATE,
   CONSTRAINT AMIGO_PK PRIMARY KEY(IDAMIGO) ENABLE
 );



 SE CREA LA TABLA CERVEZA CON SUS ATRIBUTOS Y PK.
CREATE TABLE CERVEZA
 (   
   IDCERVEZA NUMBER,
   NOMBRE VARCHAR2(20),
   MARCA VARCHAR2(10),
   CONSTRAINT CERVEZA_PK PRIMARY KEY (IDCERVEZA) ENABLE
 );
  
 SE CREA TABLA PRUEBA, CON ATRIBUTOS Y PRIMARY KEY. LAS DOS LINEAS QUE DICEN CONSTRAINT PRUEBA_FK ... SEÑALA LAS LLAVES FORANEAS (FK). DICEN QUE POR EJEMPLO, IDCERVEZA SERA LO MISMO QUE LA PK IDCERVEZA DE LA TABLA CERVEZA. MEDIANTE ESO SE UNEN LAS TABLAS AMIGO, PRUEBA Y CERVEZA.
CREATE TABLE  PRUEBA
 (   
   IDPRUEBA  NUMBER,
   IDAMIGO   NUMBER,
   IDCERVEZA NUMBER,
   CONSTRAINT PRUEBA_PK PRIMARY KEY (IDPRUEBA) ENABLE,
   CONSTRAINT PRUEBA_FK_AMIGO FOREIGN KEY (IDAMIGO) REFERENCES  AMIGO (IDAMIGO) ENABLE,
   CONSTRAINT PRUEBA_FK2_CERVEZA FOREIGN KEY (IDCERVEZA) REFERENCES  CERVEZA (IDCERVEZA) ENABLE
 );

 SE CREA LA TABLA BAR, CON SUS ATRIBUTOS Y PK.
CREATE TABLE BAR
 (
   IDBAR NUMBER,
   NOMBRE VARCHAR2(25),
   DIRECCION VARCHAR2(50),
   COMUNA VARCHAR(20),
   TELEFONO NUMBER,
   CONSTRAINT BAR_PK PRIMARY KEY(IDBAR) ENABLE
 );

 SE CREA TABLA FRECUENTA, CON ATRIBUTOS, PK Y 2 FK. CON ESTO UNEN AMIGO, FRECUENTA Y BAR. ADEMAS EN EL ULTIMO CONSTRAINT FRECUENTA_HORARIO ... SE USA COMO UNA VALIDACION. MECIONA QUE EL ATRIBUTO HORARIO SOLO PODRA RECIBIR LOS VALORES MAÑANA, TARDE, NOCHE O INDIFERENTE.
CREATE TABLE FRECUENTA
 (
   IDFRECUENTA NUMBER,
   IDAMIGO NUMBER,
   IDBAR NUMBER,
   HORARIO VARCHAR2(10),
   CONSTRAINT FRECUENTA_PK PRIMARY KEY(IDFRECUENTA) ENABLE,
   CONSTRAINT FRECUENTA_FK_AMIGO FOREIGN KEY (IDAMIGO) REFERENCES  AMIGO (IDAMIGO) ENABLE,
   CONSTRAINT FRECUENTA_FK2_BAR FOREIGN KEY (IDBAR) REFERENCES  BAR (IDBAR) ENABLE,
   CONSTRAINT FRECUENTA_HORARIO CHECK (HORARIO IN ('MAÑANA', 'TARDE', 'NOCHE', 'INDIFERENTE')) ENABLE
 );

 CREA TABLA SIRVE, CON SUS ATRIBUTOS, PK Y SUS 2 FK. SE CREA LA CONEXION BAR, SIRVE, CERVEZA.
CREATE TABLE SIRVE
 (
   IDSIRVE NUMBER,
   IDBAR NUMBER,
   IDCERVEZA NUMBER,
   CONSTRAINT SIRVE_PK PRIMARY KEY(IDSIRVE) ENABLE,
   CONSTRAINT SIRVE_FK_CERVEZA FOREIGN KEY (IDCERVEZA) REFERENCES  CERVEZA (IDCERVEZA) ENABLE,
   CONSTRAINT SIRVE_FK2_BAR FOREIGN KEY (IDBAR) REFERENCES  BAR (IDBAR) ENABLE
 );

 ACA SE POBLA LA TABLA AMIGO, ES DECIR, SE LE AGREGAN DATOS. EL BEGIN Y EL END HACEN QUE SE PUEDAN AGREGAR TODOS LOS DATOS DE UNA VEZ.
Begin
Insert into Amigo values (10, 'Pedro', 'Picapiedra', 5555555, 'ppicapiedra@gmail.com','@Picapiedra', '06/06/1966');
insert into Amigo Values (20, 'Rick', 'Wackeman', 932456765, 'rwackeman@hotmail.com', '@wackeman', '25/05/1960');
insert into Amigo Values (30, 'Jack', 'Bauer', 74859632, 'jbauer@ctu.org', '@bauer', '24/06/1970');
insert into Amigo Values (40, 'Chuck', 'Norris', 7777777, 'cnorris@dios.com', '@DonChuck', '07/07/1940');
End

SE POBLA LA TABLA CERVEZA.
BEGIN
insert into Cerveza values (10, 'Escudo', 'CCU');
insert into Cerveza values (20, 'Pale Ale', 'Kunstmann');
insert into Cerveza values (30, 'Bock', 'Kunstmann');
insert into Cerveza values (40, 'Cristal', 'CCU');
insert into Cerveza values (50, 'Baltica', 'CCU');
insert into Cerveza values (60, 'Heinecken', 'Heinecken');
insert into Cerveza values (70, 'Chimbombo', 'Cuneta');
END

SE POBLA LA TABLA PRUEBA
Begin
insert into prueba values (10, 10, 10);
insert into prueba values (11, 10, 20);
insert into prueba values (12, 10, 30);
insert into prueba values (13, 20, 10);
insert into prueba values (14, 20, 70);
insert into prueba values (15, 30, 40);
insert into prueba values (16, 30, 60);
insert into prueba values (17, 40, 70);
insert into prueba values (18, 40, 20);
END

SE POBLA LA TABLA BAR
BEGIN
insert into bar values (1, 'El Bar de Moe', 'Av. Siempre Viva 278', 'Springfield', 4884665);
insert into bar values (2, 'El Pobre Carlos', 'Av. Balmaceda 2487', 'Talagante', 8154879);
insert into bar values (3, 'Groops!', 'Downtown 200', 'Ciudad de York', 9905674);
insert into bar values (4, 'Atico', 'Santelices 669', 'Isla de Maipo', 8194596);
END

SE POBLA LA TABLA FRECUENTA
BEGIN
insert into frecuenta values (1, 10, 1, 'NOCHE');
insert into frecuenta values (2, 20, 1, 'MAÑANA');
insert into frecuenta values (3, 10, 2, 'NOCHE');
insert into frecuenta values (4, 10, 3, 'TARDE');
insert into frecuenta values (5, 30, 1, 'NOCHE');
insert into frecuenta values (6, 40, 1, 'TARDE');
insert into frecuenta values (7, 40, 3, 'MAÑANA');
insert into frecuenta values (8, 20, 4, 'NOCHE');
insert into frecuenta values (9, 40, 2, 'TARDE');
insert into frecuenta values (10, 30, 2, 'NOCHE');
END

SE POBLA LA TABLA SIRVE
BEGIN
insert into sirve values(30, 1, 10);
insert into sirve values(31, 2, 20);
insert into sirve values(32, 1, 10);
insert into sirve values(33, 2, 20);
insert into sirve values(34, 3, 60);
insert into sirve values(35, 3, 30);
insert into sirve values(36, 3, 20);
insert into sirve values(37, 4, 40);
insert into sirve values(38, 4, 60);
END

SELECT * FROM nombreTabla: DEVUELVE TODOS LOS REGISTROS (DATOS ALMACENADOS EN ATRIBUTOS) DE LA TABLA MENCIONADA
SELECT * FROM AMIGO
SELECT * FROM CERVEZA
SELECT * FROM PRUEBA
SELECT * FROM BAR
SELECT * FROM FRECUENTA
SELECT * FROM SIRVE

EN ESTA CONSULTA, SE ABREN LAS TABLAS AMIGO, CERVEZA Y PRUEBA, DONDE SE LE ASIGNAN ALIAS A, C Y P. SE DEVOLVERA SOLO EL NOMBRE Y EL APELLIDO DEL AMIGO. PRIMERO SE HACE EL JOIN, DONDE SE IGUALAN LAS ID DE UNA TABLA CON EL ID DE LA TABLA INTERMEDIA (EJ: IDAMIGO DE LA TABLA AMIGO CON IDAMIGO DE LA TABLA PRUEBA) . Y FINALMENTE SE ESCRIBE LA CONDICION. ESTA DICE QUE DEVUELVA EL NOMBRE Y APELLIDO DE LOS QUE HAN CONSUMIDO ESCUDO Y ADEMAS BOCK (SE HACE UNA INSTRUCCION ESPECIAL CON IN DONDE SOLO SE UTILIZA EL IDAMIGO PARA SABER LA SEGUNDA CERVEZA QUE BEBIO Y VOLVER A VERIFICAR).
SELECT A.NOMBRE, A.APELLIDO
FROM AMIGO A, CERVEZA C, PRUEBA P
WHERE A.IDAMIGO = P.IDAMIGO
      AND P.IDCERVEZA = C.IDCERVEZA
      AND C.NOMBRE = 'Escudo'
      AND A.IDAMIGO IN
      ( SELECT IDAMIGO
        FROM PRUEBA P, CERVEZA C
        WHERE C.IDCERVEZA = P.IDCERVEZA
              AND C.NOMBRE = 'Bock'
      );

VISTA: ESTA LINEA CREA UNA VISTA PARA SER OCUPADA DESPUES Y VER CAMBIOS. TAMBIEN PUEDE SER LLAMADA COMO SELECT * FROM VISTA SIEMPRE Y CUANDO SE HAYA COLOCADO ARRIBA EN UNA CONSULTA DEFINIDA.
CREATE VIEW VISTA

ESTA CONSULTA DICE QUE OCUPARA LAS TABLAS AMIGO, BAR, FRECUENTA, CERVEZA Y SIRVE. SOLO DEVOLVERA EL NOMBRE DEL AMIGO, NOMBRE DE LA CERVEZA, NOMBRE DEL BAR Y EL HORARIO (SIN CONDICION, VALIDACION O FILTRACION). SE HACEN LOS JOIN.
SELECT A.NOMBRE, C.NOMBRE, B.NOMBRE, HORARIO
FROM AMIGO A, BAR B, FRECUENTA F, CERVEZA C, SIRVE S
WHERE A.IDAMIGO = F.IDAMIGO
  AND F.IDBAR = B.IDBAR
  AND B.IDBAR = S.IDBAR
  AND S.IDCERVEZA = C.IDCERVEZA
 
USER_TABLES MUESTRA TODAS LA INFORMACION DE TODAS LAS TABLAS
SELECT * FROM USER_TABLES

ESTO DESCRIBE LA ESTRUCTURA DE LA TABLA CERVEZA
DESCRIBE CERVEZA

NAMASTE!!!

lunes, 2 de mayo de 2011

Formas Normales

Nuevamente, subimos el material usado para la Disertacion sobre: FORMAS NORMALES.

  • Normalizacion
  • Primera Forma Normal (1FN) + Ejemplo
  • Segunda Forma Normal (2FN) + Ejemplo
  • Tercera Forma Normal (3FN) + Ejemplo 
Descargable aca:  Formas Normales.ppsx


NAMASTE!

lunes, 11 de abril de 2011

Modelo Entidad - Relacion

Este es el material usado para la Disertacion sobre: MODELO ENTIDAD - RELACION.
  • Pasos para Realizar un buen Modelo ENTIDAD - RELACION
  • Ejercicio: Amigos & Cervezas. Enunciado, Modelo y Preguntas.
  • Ejercicio: Curso de Capacitacion Enunciado, Modelo y Preguntas.

Lo pueden descargar a traves de el siguiente link:
MODELO ENTIDAD - RELACION.PPSX

NAMASTE !!

sábado, 9 de abril de 2011

Oracle 10g (proximamente completo el post)

Hola en esta ocacion escribire sobre Oracle 10g Express Edition

"Inserte la definicion de oracle aqui XD"

Comandos:
(colocare algunas cosas a color, para que sea facil de acimilar cuando se hable de lo mismo)

Crear Tabla:
create table nombreTabla (
nombreAtributo tipoAtributo,
nombreAtributo2 tipoAtributo2);


Insertar Valores:
begin
insert into nombreTabla values (valorAtributo1, valorAtributo2);
insert into nombreTabla values (valorAtributo1, valorAtributo2);
end

Ver Tabla:
select * from nombreTabla;

Ver en la tabla los valores que cumplen la condicion:
select * from nombreTabla where nombreAtributo like valorAtributo1;

Cambiar valor a los atributos:
update nombreTabla set nombreAtributo = valorNuevo
where nombreAtrivuto = valorAntiguo;


Cambiar valor a los atributos que cumplan la condicion:
update nombreTabla set nombreAtributo = valorNuevo
where nombreAtrivuto = valorAntiguo;

and nombreAtributo2 = valorAtributo2;

Ver descripcion de la tabla:
describe nombreTabla;

Eliminar tabla:
delete nombreTabla;

Eliminar de la tabla el que cumpla la condicion:
delete nombreTabla where nombreAtributo = valorAtributo
and nombreAtributo2 = valorAtributo2;

viernes, 25 de marzo de 2011

Microsoft Office Visio

Microsoft Office Visio 2007 facilita a los profesionales empresariales y de TI la visualización, el análisis y la comunicación de información compleja. Pase de texto y tablas complicados y difíciles de comprender a diagramas de Visio que comunican información de un vistazo. En lugar de imágenes estáticas, cree diagramas de Visio conectados a datos que muestran información, son fáciles de actualizar y pueden aumentar espectacularmente la productividad. Use la amplia variedad de diagramas de Office Visio 2007 para comprender, procesar y compartir información sobre los sistemas, recursos y procesos organizativos de su empresa.

Office Visio 2007 está disponible en dos ediciones independientes: Office Visio Professional y Office Visio Standard. Office Visio Standard 2007 tiene la misma funcionalidad básica que Office Visio Professional 2007 e incluye un subconjunto de sus características y plantillas. Office Visio Professional 2007 ofrece funcionalidad avanzada, como conectividad de datos y características de visualización, que no se incluyen en Office Visio Standard 2007.

Notación para la Modelación de Procesos de Negocio. (BPMN)


BPMN es una notación para el modelado de procesos de negocios desarrollada por la BPMI una organización incluye compañías como: Intalio, SAP, Sun, y Versata, siendo una agrupación que tiene dentro de sus objetivos principales el crear una notación estándar para el modelado de procesos de negocio. Provee una notación gráfica para expresar los procesos de negocio en un diagrama de procesos de negocio.

Tiene como objetivo principal servir como soporte para la gestión por procesos, como una notación que pueda ser entendida fácilmente desde los analistas que crean los bocetos iniciales del proceso, los desarrolladores técnicos responsables de implementar la tecnología que ejecutará estos procesos, hasta las personas que los ejecutan y aquellas que llevaran a cabo el monitoreo y supervisión de los procesos. En otras palabras esta notación crea un enlace entre las etapas de diseño e implementación.

Es capaz de representar semánticas de procesos complejos. Otro objetivo es asegurar que los lenguajes XML diseñados para la ejecución de procesos de negocio puedan ser visualizados con una notación común, dentro de estos lenguajes encontramos por ejemplo BPEL4WS, que es un lenguaje de ejecución de procesos de negocios para servicios web. Dentro de todos estos lenguajes y notaciones el más integrador es BPMN, para su construcción sus creadores BPMI, revisaron y analizaron diferentes notaciones existentes tomando de ellas las mejores ideas consolidándolas en una notación estándar. Entre las notaciones y metodologías revisadas están: Diagrama de Actividad de UML, IDEF, ebXML BPSS, Diagrama ADF, RosettaNet, LOVeM y EPCs entre otras.

Herramientas de software para la modelación y análisis de procesos de negocio.

Con el aumento del uso de la gestión de procesos por parte de las empresas, cada vez se requiere de mejores herramientas para el análisis de los diferentes procesos que describen todas las tareas y roles de los empleados y socios de negocio, así como las aplicaciones de software que los soportan y los flujos de trabajo tanto internos como externos que son esenciales para alcanzar las metas de negocio de una compañía.

Visio y otras herramientas simples de dibujo y documentación continúan siendo usadas, pero se esta buscando una herramienta integral de modelado que añada valor al análisis y que tenga en cuenta aspectos de la gestión de modelos negocio.


para mas informacion
http://www.gestiopolis.com/administracion-estrategia/lenguajes-notaciones-y-herramientas-en-analisis-de-procesos.htm

Como crear un modelo Entidad-Relación

A continuacion, explicare unos sencillos pasos a seguir para crear el modelo con el minimo de errores.

Pasos a seguir:

1) Leer el enunciado y entender hacia que area va dirigida el modelo.
2) Identificar las entidades que tendra el modelo.
3) Identificar los atributos de dichas entidades.
4) Identidicar las relaciones entre las entidades

Tips:

-Las entidades son objetos tangibles e intangibles que posean caracteristicas
.
-Buscar en el enunciado los sustantivos que tengan relacion con la entidad.
-Buscar en el enunciado los verbos y que tengan una ceoerencia en la relacion, si el vervo se repite, buscar un sinonimo de dicho verbo.

PD: entre los atributos pueden existir Atributos Explicitos y Atributos Implicitos.
Atributos Explicitos: Estos estan dichos en el enunciado y son pedidos.
Atributos Implicitos: Estos no aparecen ni son pedidos, pero puede caver la posivilidad de que en un futuro se usen.