FelipeSulser / ServiciosSociales

Para SistInfoInet
3 stars 0 forks source link

El DDL generado tiene problemas #19

Closed HaritzPuerto closed 9 years ago

HaritzPuerto commented 9 years ago

Hay problemas con el DDL generado. Al definir el atributo dni de ciudadano lo pone como unique, pero luego hace un alter table add constraint dni unique (da un error). Tampoco genera las FK de profesional y en expediente se crea propietario_id pero no existe ese atributo!!! LOL

CREATE TABLE CIUDADANO (ID BIGINT NOT NULL, APELLIDO1 VARCHAR(255) NOT NULL, APELLIDO2 VARCHAR(255), DNI VARCHAR(255) NOT NULL UNIQUE, FECHA_NACIMIENTO DATE NOT NULL, NACIONALIDAD VARCHAR(255) NOT NULL, NOMBRE VARCHAR(255) NOT NULL, EXPEDIENTE_PERSONAL_ID BIGINT, PRIMARY KEY (ID)) CREATE TABLE CITA (ID BIGINT NOT NULL, COMENTARIOS VARCHAR(255), FECHA DATE NOT NULL, TIPO_DE_CITA VARCHAR(255) NOT NULL, CIUDADANO_ID BIGINT NOT NULL, PROFESIONAL_ID BIGINT NOT NULL, PRIMARY KEY (ID)) CREATE TABLE EXPEDIENTE (ID BIGINT NOT NULL, CSS VARCHAR(255) NOT NULL, FECHA_APERTURA DATE NOT NULL, ZONA VARCHAR(255) NOT NULL, PRIMARY KEY (ID)) CREATE TABLE PROFESIONAL (ID BIGINT NOT NULL, APELLIDO1 VARCHAR(255) NOT NULL, APELLIDO2 VARCHAR(255), DNI VARCHAR(255) NOT NULL UNIQUE, NOMBRE VARCHAR(255) NOT NULL, PRIMARY KEY (ID)) CREATE TABLE VIVIENDA (ID BIGINT NOT NULL, CALLE VARCHAR(255) NOT NULL, CODIGO_POSTAL VARCHAR(255) NOT NULL, CONDICIONES VARCHAR(255), METROS_CUADRADOS VARCHAR(255), MUNICIPIO VARCHAR(255) NOT NULL, REGIMEN_TENENCIA VARCHAR(255) NOT NULL, TELEFONO VARCHAR(255), PROPIETARIO_ID BIGINT, EXPEDIENTE_RESIDENCIA_ID BIGINT NOT NULL, PRIMARY KEY (ID)) CREATE TABLE FAMILIAR (ID BIGINT NOT NULL, APELLIDO1 VARCHAR(255) NOT NULL, APELLIDO2 VARCHAR(255), DNI VARCHAR(255) NOT NULL UNIQUE, FECHA_NACIMIENTO DATE NOT NULL, INGRESO_MEDIO FLOAT, MU VARCHAR(255), NOMBRE VARCHAR(255) NOT NULL, PARENTESCO VARCHAR(255) NOT NULL, EXPEDIENTE_FAM_ID BIGINT NOT NULL, PRIMARY KEY (ID)) CREATE TABLE INTERVENCIONES (ID BIGINT NOT NULL, ANOTACIONES VARCHAR(255), FECHA DATE NOT NULL, EXPEDIENTE_ID BIGINT NOT NULL, CITA_ID BIGINT NOT NULL, PRIMARY KEY (ID)) ALTER TABLE CIUDADANO ADD CONSTRAINT UNQ_CIUDADANO_0 UNIQUE (dni) ALTER TABLE CIUDADANO ADD CONSTRAINT CDDNXPDNTPRSONALID FOREIGN KEY (EXPEDIENTE_PERSONAL_ID) REFERENCES EXPEDIENTE (ID) ALTER TABLE CITA ADD CONSTRAINT CITAPROFESIONAL_ID FOREIGN KEY (PROFESIONAL_ID) REFERENCES PROFESIONAL (ID) ALTER TABLE CITA ADD CONSTRAINT CITA_CIUDADANO_ID FOREIGN KEY (CIUDADANO_ID) REFERENCES CIUDADANO (ID) ALTER TABLE VIVIENDA ADD CONSTRAINT VVNDXPDNTRSDNCIAID FOREIGN KEY (EXPEDIENTE_RESIDENCIA_ID) REFERENCES EXPEDIENTE (ID) ALTER TABLE VIVIENDA ADD CONSTRAINT VVENDAPRPIETARIOID FOREIGN KEY (PROPIETARIO_ID) REFERENCES EXPEDIENTE (ID) ALTER TABLE FAMILIAR ADD CONSTRAINT FMLARXPDIENTEFAMID FOREIGN KEY (EXPEDIENTE_FAM_ID) REFERENCES EXPEDIENTE (ID) ALTER TABLE INTERVENCIONES ADD CONSTRAINT NTERVENCIONESCTAID FOREIGN KEY (CITA_ID) REFERENCES CITA (ID) ALTER TABLE INTERVENCIONES ADD CONSTRAINT NTRVNCONESXPDNTEID FOREIGN KEY (EXPEDIENTE_ID) REFERENCES EXPEDIENTE (ID) CREATE TABLE SEQUENCE (SEQ_NAME VARCHAR(50) NOT NULL, SEQ_COUNT DECIMAL(15), PRIMARY KEY (SEQ_NAME)) INSERT INTO SEQUENCE(SEQ_NAME, SEQ_COUNT) values ('SEQ_GEN', 0)

estebanpw commented 9 years ago

a ver a ver aver, @HaritzPuerto, en el último commit que hice arreglé lo de unique de ciudadano, y todo la base de datos se me creaba bien sin errores (otra cosa es que no refleje el E/R tal y como queremos). ¿A ti NO te compila bien o como?

estebanpw commented 9 years ago

@HaritzPuerto "Al definir el atributo dni de ciudadano lo pone como unique, pero luego hace un alter table add constraint dni unique (da un error)."

Fixeado, no da error (al menos en el mio wat?)  DNI@ciudadano Type   :   VARCHAR  DB data type   :   VARCHAR  Column size   :   255  Decimal digits   :   0  Part of primary key   :   false  Part of an index //aqui esta la unique   :   true  Position

  :   4

@HaritzPuerto "En expediente se genera propietario_id

en mi dba de expediente:

Atributos: ID, CSS, FECHA_APERTURA, ZONA

@HaritzPuerto "Tampoco genera las FK de profesional "

Aqui hay una cosa que no entiendo. ¿No esta bien asi? Para ver las citas de un profesional solo habria que hacer un join entre Profesional y Cita por la id. ¿Para que poner en la propia tabla de profesional las citas como fk?

dime si a ti salen las mismas cosas que a mi (puede ser que distintas versiones de java/jpa/netbeans cambien los resultados), y si era a estos errores a los que te referias.

HaritzPuerto commented 9 years ago

@steveomatic acabo de descargarme el commit que hiciste y ha arreglado lo del DNI. Thnx! Estoy mirando lo otro

HaritzPuerto commented 9 years ago

Está bien el DDL solo le falta #20 lo hago ahora y hago un pull request!!

estebanpw commented 9 years ago

genial loco, entonces cierro esta

HaritzPuerto commented 9 years ago

Se cierra al acpetarse el PR ya que el PR referencia a este issue

estebanpw commented 9 years ago

ahhhh ok thx

HaritzPuerto commented 9 years ago

no se ha cerrado al acpetar la PR. Lo cierro