jueves, 10 de octubre de 2013

Taller compañía



-- Generado por Oracle SQL Developer Data Modeler 3.1.4.710
--   en:        2013-10-10 23:14:29 CLT
--   sitio:      Oracle Database 11g
--   tipo:      Oracle Database 11g



CREATE TABLE "Carga Familiares" 
    ( 
     sexo CHAR (1)  NOT NULL , 
     parentescoEmpleado VARCHAR2  NOT NULL , 
     fechaNacimiento INTEGER  NOT NULL , 
     numeroLiquidacion INTEGER  NOT NULL , 
     numeroUnico INTEGER  NOT NULL , 
     numeroUnico1 INTEGER  NOT NULL , 
     numeroLiquidacion1 INTEGER  NOT NULL , 
     numeroUnico2 INTEGER  NOT NULL , 
     numeroLiquidacion2 INTEGER  NOT NULL , 
     id INTEGER  NOT NULL , 
     codigoEmpleado INTEGER  NOT NULL 
    ) 
;


CREATE UNIQUE INDEX "Carga Familiares__IDXv1" ON "Carga Familiares" 
    ( 
     numeroUnico ASC , 
     codigoEmpleado ASC , 
     id ASC 
    ) 
;
CREATE UNIQUE INDEX "Carga Familiares__IDX" ON "Carga Familiares" 
    ( 
     numeroLiquidacion ASC , 
     numeroUnico ASC , 
     numeroUnico1 ASC 
    ) 
;
CREATE UNIQUE INDEX "Carga Familiares__IDXv2" ON "Carga Familiares" 
    ( 
     numeroLiquidacion1 ASC , 
     numeroUnico ASC , 
     numeroUnico2 ASC 
    ) 
;

ALTER TABLE "Carga Familiares" 
    ADD CONSTRAINT "Carga Familiares PK" PRIMARY KEY ( numeroUnico1, numeroUnico, numeroLiquidacion ) ;



CREATE TABLE Departamento 
    ( 
     numeroUnico INTEGER  NOT NULL , 
     nombreEmpleado INTEGER 
    ) 
;



ALTER TABLE Departamento 
    ADD CONSTRAINT "Departamento PK" PRIMARY KEY ( numeroUnico ) ;



CREATE TABLE "Deposito Cuenta C" 
    ( 
     numeroCuenta NUMBER (10,1)  NOT NULL , 
     Monto NUMBER (10,1)  NOT NULL 
    ) 
;



ALTER TABLE "Deposito Cuenta C" 
    ADD CONSTRAINT "Deposito Cuenta C"." PK" PRIMARY KEY ( numeroCuenta ) ;



CREATE TABLE Empleado 
    ( 
     nombre VARCHAR2 (30)  NOT NULL , 
     rut VARCHAR2 (10)  NOT NULL , 
     dirección VARCHAR2  NOT NULL , 
     sueldo NUMBER (10,1)  NOT NULL , 
     sexo CHAR (1)  NOT NULL , 
     fechaNacimiento VARCHAR2  NOT NULL , 
     numeroUnico INTEGER  NOT NULL , 
     numeroLiquidacion INTEGER  NOT NULL , 
     numeroUnico1 INTEGER  NOT NULL , 
     numeroUnico3 INTEGER  NOT NULL , 
     codigoEmpleado INTEGER  NOT NULL , 
     id INTEGER  NOT NULL , 
     numeroUnico2 INTEGER  NOT NULL , 
     numeroLiquidacion1 INTEGER  NOT NULL 
    ) 
;


CREATE UNIQUE INDEX Empleado__IDXv1 ON Empleado 
    ( 
     id ASC , 
     numeroUnico ASC , 
     codigoEmpleado ASC 
    ) 
;
CREATE UNIQUE INDEX Empleado__IDX ON Empleado 
    ( 
     numeroUnico2 ASC 
    ) 
;
CREATE UNIQUE INDEX Empleado__IDXv2 ON Empleado 
    ( 
     numeroUnico ASC , 
     numeroUnico1 ASC , 
     numeroLiquidacion ASC 
    ) 
;
CREATE UNIQUE INDEX Empleado__IDXv3 ON Empleado 
    ( 
     numeroUnico ASC , 
     numeroUnico3 ASC , 
     numeroLiquidacion ASC 
    ) 
;

ALTER TABLE Empleado 
    ADD CONSTRAINT "Empleado PK" PRIMARY KEY ( numeroLiquidacion, numeroUnico1, numeroUnico ) ;



CREATE TABLE "Pago Cheque" 
    ( 
     numeroCheque INTEGER  NOT NULL , 
     Monto NUMBER (10,1)  NOT NULL 
    ) 
;



ALTER TABLE "Pago Cheque" 
    ADD CONSTRAINT "Pago Cheque PK" PRIMARY KEY ( numeroCheque ) ;



CREATE TABLE Proyectos 
    ( 
     numeroUnico_1 INTEGER  NOT NULL , 
     nombre VARCHAR2 (30) , 
     numeroUnico INTEGER , 
     numeroLiquidacion INTEGER  NOT NULL , 
     numeroUnico1 INTEGER  NOT NULL , 
     numeroUnico2 INTEGER  NOT NULL , 
     numeroLiquidacion1 INTEGER  NOT NULL , 
     numeroUnico11 INTEGER  NOT NULL , 
     numeroUnico3 INTEGER  NOT NULL , 
     numeroUnico12 INTEGER  NOT NULL , 
     codigoEmpleado INTEGER  NOT NULL , 
     id INTEGER  NOT NULL , 
     numeroUnico4 INTEGER 
    ) 
;



ALTER TABLE Proyectos 
    ADD CONSTRAINT Key_1 PRIMARY KEY ( numeroUnico11, numeroUnico2, numeroLiquidacion1, numeroUnico_1, numeroUnico1, numeroLiquidacion, numeroUnico3, numeroUnico12 ) ;



CREATE TABLE "Sueldo Empleados" 
    ( 
     numeroLiquidacion INTEGER  NOT NULL , 
     numeroCheque INTEGER , 
     numeroCuenta NUMBER (10,1) , 
     numeroCheque1 INTEGER , 
     numeroCuenta1 NUMBER (10,1) 
    ) 
;



ALTER TABLE "Sueldo Empleados" 
    ADD CONSTRAINT "Sueldo Empleados PK" PRIMARY KEY ( numeroLiquidacion ) ;




ALTER TABLE Empleado 
    ADD CONSTRAINT Asignado FOREIGN KEY 
    ( 
     numeroUnico
    ) 
    REFERENCES Departamento 
    ( 
     numeroUnico
    ) 
;


ALTER TABLE Empleado 
    ADD CONSTRAINT Asignadov1 FOREIGN KEY 
    ( 
     numeroUnico2
    ) 
    REFERENCES Departamento 
    ( 
     numeroUnico
    ) 
;


ALTER TABLE Proyectos 
    ADD CONSTRAINT Controla FOREIGN KEY 
    ( 
     numeroUnico
    ) 
    REFERENCES Departamento 
    ( 
     numeroUnico
    ) 
;


ALTER TABLE Proyectos 
    ADD CONSTRAINT Controlav1 FOREIGN KEY 
    ( 
     numeroUnico4
    ) 
    REFERENCES Departamento 
    ( 
     numeroUnico
    ) 
;


ALTER TABLE Proyectos 
    ADD CONSTRAINT Relation_14 FOREIGN KEY 
    ( 
     numeroLiquidacion,
     numeroUnico12,
     numeroUnico3
    ) 
    REFERENCES Empleado 
    ( 
     numeroLiquidacion,
     numeroUnico1,
     numeroUnico
    ) 
;


ALTER TABLE Proyectos 
    ADD CONSTRAINT Relation_14v1 FOREIGN KEY 
    ( 
     numeroLiquidacion1,
     numeroUnico11,
     numeroUnico2
    ) 
    REFERENCES Empleado 
    ( 
     numeroLiquidacion,
     numeroUnico1,
     numeroUnico
    ) 
;


ALTER TABLE Empleado 
    ADD CONSTRAINT Relation_16 FOREIGN KEY 
    ( 
     numeroLiquidacion
    ) 
    REFERENCES "Sueldo Empleados" 
    ( 
     numeroLiquidacion
    ) 
;


ALTER TABLE Empleado 
    ADD CONSTRAINT Relation_16v1 FOREIGN KEY 
    ( 
     numeroLiquidacion1
    ) 
    REFERENCES "Sueldo Empleados" 
    ( 
     numeroLiquidacion
    ) 
;


ALTER TABLE "Sueldo Empleados" 
    ADD CONSTRAINT Relation_18 FOREIGN KEY 
    ( 
     numeroCheque
    ) 
    REFERENCES "Pago Cheque" 
    ( 
     numeroCheque
    ) 
;


ALTER TABLE "Sueldo Empleados" 
    ADD CONSTRAINT Relation_18v1 FOREIGN KEY 
    ( 
     numeroCheque1
    ) 
    REFERENCES "Pago Cheque" 
    ( 
     numeroCheque
    ) 
;


ALTER TABLE "Sueldo Empleados" 
    ADD CONSTRAINT Relation_20 FOREIGN KEY 
    ( 
     numeroCuenta
    ) 
    REFERENCES "Deposito Cuenta C" 
    ( 
     numeroCuenta
    ) 
;


ALTER TABLE "Sueldo Empleados" 
    ADD CONSTRAINT Relation_20v1 FOREIGN KEY 
    ( 
     numeroCuenta1
    ) 
    REFERENCES "Deposito Cuenta C" 
    ( 
     numeroCuenta
    ) 
;


ALTER TABLE Empleado 
    ADD CONSTRAINT Relation_34 FOREIGN KEY 
    ( 
     numeroUnico,
     numeroUnico3,
     numeroLiquidacion
    ) 
    REFERENCES "Carga Familiares" 
    ( 
     numeroUnico1,
     numeroUnico,
     numeroLiquidacion
    ) 
    ON DELETE CASCADE 
;


ALTER TABLE "Carga Familiares" 
    ADD CONSTRAINT Relation_34 FOREIGN KEY 
    ( 
     numeroLiquidacion1,
     numeroUnico,
     numeroUnico2
    ) 
    REFERENCES Empleado 
    ( 
     numeroLiquidacion,
     numeroUnico1,
     numeroUnico
    ) 
    ON DELETE CASCADE 
;


ALTER TABLE "Carga Familiares" 
    ADD CONSTRAINT Relation_34v1 FOREIGN KEY 
    ( 
     numeroLiquidacion,
     numeroUnico,
     numeroUnico1
    ) 
    REFERENCES Empleado 
    ( 
     numeroLiquidacion,
     numeroUnico1,
     numeroUnico
    ) 
    ON DELETE CASCADE 
;


ALTER TABLE Empleado 
    ADD CONSTRAINT Relation_34v1 FOREIGN KEY 
    ( 
     numeroUnico,
     numeroUnico1,
     numeroLiquidacion
    ) 
    REFERENCES "Carga Familiares" 
    ( 
     numeroUnico1,
     numeroUnico,
     numeroLiquidacion
    ) 
    ON DELETE CASCADE 
;



-- Informe de Resumen de Oracle SQL Developer Data Modeler: 
-- 
-- CREATE TABLE                             7
-- CREATE INDEX                             7
-- ALTER TABLE                             23
-- CREATE VIEW                              0
-- CREATE PACKAGE                           0
-- CREATE PACKAGE BODY                      0
-- CREATE PROCEDURE                         0
-- CREATE FUNCTION                          0
-- CREATE TRIGGER                           0
-- ALTER TRIGGER                            0
-- CREATE STRUCTURED TYPE                   0
-- CREATE COLLECTION TYPE                   0
-- CREATE CLUSTER                           0
-- CREATE CONTEXT                           0
-- CREATE DATABASE                          0
-- CREATE DIMENSION                         0
-- CREATE DIRECTORY                         0
-- CREATE DISK GROUP                        0
-- CREATE ROLE                              0
-- CREATE ROLLBACK SEGMENT                  0
-- CREATE SEQUENCE                          0
-- CREATE MATERIALIZED VIEW                 0
-- CREATE SYNONYM                           0
-- CREATE TABLESPACE                        0
-- CREATE USER                              0
-- 
-- DROP TABLESPACE                          0
-- DROP DATABASE                            0
-- 
-- ERRORS                                   0
-- WARNINGS                                 0

INSERT INTO PAGO
(
  idpago,
  fecha,
  monto,
  descripcion
)
VALUES
(
  1,
  to_date('2013-01-01','yyyy-mm-dd'),
  1000000,
  'MERECE TODO SU SUELDO'
);

INSERT INTO empleado 
(
  IDEMPLEADO,
  NOMBRE,
  APELLIDOPATERNO,
  APELLIDOMATERNO,
  RUT,
  SEXO,
  FECHANACIMIENTO,
  DIRECCIÓN,
  SUELDO,
  HORAPROYECTO,
  FORMAPAGO,
  NOMBREUNICO,
  NOMBREUNICO1,
  IDPAGO

values
(
  '1',
  'mariela',
  'fuentealba',
  'arratia',
  '1-9',
  'femenino',
  to_date('1989-01-01','yyyy-mm-dd'),
  'calle no se, numero 123',
  1000000,
  100,
  'tarjeta',
  'nombreunico',
  'asfasdf',
  1
);


SELECT * FROM empleado