fix llaves primarias
This commit is contained in:
parent
6f2d5efc61
commit
a956d20c82
18
schema.sql
18
schema.sql
@ -4,12 +4,14 @@ CREATE TABLE MEDALLA(
|
|||||||
CONSTRAINT MEDALLA_PK PRIMARY KEY (ID_MEDALLA)
|
CONSTRAINT MEDALLA_PK PRIMARY KEY (ID_MEDALLA)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE CATEGORIA(
|
CREATE TABLE CATEGORIA(
|
||||||
ID_CATEGORIA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_CATEGORIA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
DESCRIPCION VARCHAR(50),
|
DESCRIPCION VARCHAR(50),
|
||||||
CONSTRAINT CATEGORIA_PK PRIMARY KEY (ID_CATEGORIA)
|
CONSTRAINT CATEGORIA_PK PRIMARY KEY (ID_CATEGORIA)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE ATLETA (
|
CREATE TABLE ATLETA (
|
||||||
ID_ATLETA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_ATLETA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
NOMBRE VARCHAR2(50),
|
NOMBRE VARCHAR2(50),
|
||||||
@ -19,18 +21,21 @@ CREATE TABLE ATLETA (
|
|||||||
CONSTRAINT ATLETA_PK PRIMARY KEY (ID_ATLETA)
|
CONSTRAINT ATLETA_PK PRIMARY KEY (ID_ATLETA)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE PAIS(
|
CREATE TABLE PAIS(
|
||||||
ID_PAIS NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_PAIS NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
NOMBRE VARCHAR(50),
|
NOMBRE VARCHAR(50),
|
||||||
CONSTRAINT PAIS_PK PRIMARY KEY (ID_PAIS)
|
CONSTRAINT PAIS_PK PRIMARY KEY (ID_PAIS)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE TIPOS_DEPORTES(
|
CREATE TABLE TIPOS_DEPORTES(
|
||||||
ID_TIPO NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_TIPO NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
DESCRIPCION VARCHAR(50),
|
DESCRIPCION VARCHAR(50),
|
||||||
CONSTRAINT TIPO_PK PRIMARY KEY (ID_TIPO)
|
CONSTRAINT TIPO_PK PRIMARY KEY (ID_TIPO)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE CIUDAD (
|
CREATE TABLE CIUDAD (
|
||||||
ID_CIUDAD NUMBER,
|
ID_CIUDAD NUMBER,
|
||||||
NOMBRE VARCHAR(50),
|
NOMBRE VARCHAR(50),
|
||||||
@ -39,6 +44,7 @@ CREATE TABLE CIUDAD (
|
|||||||
CONSTRAINT CIUDAD_PAIS_FK FOREIGN KEY (PAIS) REFERENCES PAIS(ID_PAIS)
|
CONSTRAINT CIUDAD_PAIS_FK FOREIGN KEY (PAIS) REFERENCES PAIS(ID_PAIS)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE LUGAR (
|
CREATE TABLE LUGAR (
|
||||||
ID_LUGAR NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_LUGAR NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
NOMBRE VARCHAR2(50),
|
NOMBRE VARCHAR2(50),
|
||||||
@ -48,6 +54,7 @@ CREATE TABLE LUGAR (
|
|||||||
CONSTRAINT LUGAR_CIUDAD_FK FOREIGN KEY (CIUDAD) REFERENCES CIUDAD(ID_CIUDAD)
|
CONSTRAINT LUGAR_CIUDAD_FK FOREIGN KEY (CIUDAD) REFERENCES CIUDAD(ID_CIUDAD)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE HOTEL(
|
CREATE TABLE HOTEL(
|
||||||
ID_HOTEL NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_HOTEL NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
NOMBRE VARCHAR2(50),
|
NOMBRE VARCHAR2(50),
|
||||||
@ -56,6 +63,7 @@ CREATE TABLE HOTEL(
|
|||||||
CONSTRAINT HOTEL_CIUDAD_FK FOREIGN KEY (CIUDAD) REFERENCES CIUDAD(ID_CIUDAD)
|
CONSTRAINT HOTEL_CIUDAD_FK FOREIGN KEY (CIUDAD) REFERENCES CIUDAD(ID_CIUDAD)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE CAPITAL(
|
CREATE TABLE CAPITAL(
|
||||||
ID_PAIS NUMBER,
|
ID_PAIS NUMBER,
|
||||||
ID_CIUDAD NUMBER,
|
ID_CIUDAD NUMBER,
|
||||||
@ -76,6 +84,7 @@ CREATE TABLE DELEGACION(
|
|||||||
CONSTRAINT DELEGACION_ATLETA_FK FOREIGN KEY (ATLETA) REFERENCES ATLETA(ID_ATLETA)
|
CONSTRAINT DELEGACION_ATLETA_FK FOREIGN KEY (ATLETA) REFERENCES ATLETA(ID_ATLETA)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE COMPETENCIA(
|
CREATE TABLE COMPETENCIA(
|
||||||
ID_COMPETENCIA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_COMPETENCIA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
NOMBRE VARCHAR2(50),
|
NOMBRE VARCHAR2(50),
|
||||||
@ -88,6 +97,7 @@ CREATE TABLE COMPETENCIA(
|
|||||||
CONSTRAINT COMPETENCIA_LUGAR_FK FOREIGN KEY (LUGAR) REFERENCES LUGAR(ID_LUGAR)
|
CONSTRAINT COMPETENCIA_LUGAR_FK FOREIGN KEY (LUGAR) REFERENCES LUGAR(ID_LUGAR)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE PRECOMPETENCIA(
|
CREATE TABLE PRECOMPETENCIA(
|
||||||
ID_PRECOMPETENCIA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
ID_PRECOMPETENCIA NUMBER GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
|
||||||
FECHA DATE,
|
FECHA DATE,
|
||||||
@ -98,6 +108,7 @@ CREATE TABLE PRECOMPETENCIA(
|
|||||||
CONSTRAINT PRECOMPETENCIA_LUGAR_FK FOREIGN KEY (LUGAR) REFERENCES LUGAR(ID_LUGAR)
|
CONSTRAINT PRECOMPETENCIA_LUGAR_FK FOREIGN KEY (LUGAR) REFERENCES LUGAR(ID_LUGAR)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE HOSPEDAR(
|
CREATE TABLE HOSPEDAR(
|
||||||
ID_HOTEL NUMBER,
|
ID_HOTEL NUMBER,
|
||||||
ID_DELEGACION NUMBER,
|
ID_DELEGACION NUMBER,
|
||||||
@ -105,34 +116,41 @@ CREATE TABLE HOSPEDAR(
|
|||||||
FECHA_FIN DATE,
|
FECHA_FIN DATE,
|
||||||
PRECIO_DELEGACION NUMBER,
|
PRECIO_DELEGACION NUMBER,
|
||||||
PRECIO_ATLETA NUMBER,
|
PRECIO_ATLETA NUMBER,
|
||||||
|
CONSTRAINT HOSPEDAR_PK PRIMARY KEY (ID_HOTEL, ID_DELEGACION, FECHA_INICIO),
|
||||||
CONSTRAINT HOSPEDAR_HOTEL_FK FOREIGN KEY (ID_HOTEL) REFERENCES HOTEL(ID_HOTEL),
|
CONSTRAINT HOSPEDAR_HOTEL_FK FOREIGN KEY (ID_HOTEL) REFERENCES HOTEL(ID_HOTEL),
|
||||||
CONSTRAINT HOSPEDAR_DELEGACION_FK FOREIGN KEY (ID_DELEGACION) REFERENCES DELEGACION(ID_DELEGACION)
|
CONSTRAINT HOSPEDAR_DELEGACION_FK FOREIGN KEY (ID_DELEGACION) REFERENCES DELEGACION(ID_DELEGACION)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE GANAR(
|
CREATE TABLE GANAR(
|
||||||
ID_ATLETA NUMBER,
|
ID_ATLETA NUMBER,
|
||||||
ID_COMPETENCIA NUMBER,
|
ID_COMPETENCIA NUMBER,
|
||||||
ID_MEDALLA NUMBER,
|
ID_MEDALLA NUMBER,
|
||||||
FECHA DATE,
|
FECHA DATE,
|
||||||
PUNTAJE NUMBER,
|
PUNTAJE NUMBER,
|
||||||
|
CONSTRAINT GANAR_PK PRIMARY KEY (ID_ATLETA, ID_COMPETENCIA, FECHA),
|
||||||
CONSTRAINT GANAR_ATLETA_FK FOREIGN KEY (ID_ATLETA) REFERENCES ATLETA(ID_ATLETA),
|
CONSTRAINT GANAR_ATLETA_FK FOREIGN KEY (ID_ATLETA) REFERENCES ATLETA(ID_ATLETA),
|
||||||
CONSTRAINT GANAR_COMPETENCIA_FK FOREIGN KEY (ID_COMPETENCIA) REFERENCES COMPETENCIA(ID_COMPETENCIA),
|
CONSTRAINT GANAR_COMPETENCIA_FK FOREIGN KEY (ID_COMPETENCIA) REFERENCES COMPETENCIA(ID_COMPETENCIA),
|
||||||
CONSTRAINT GANAR_MEDALLA_FK FOREIGN KEY (ID_MEDALLA) REFERENCES MEDALLA(ID_MEDALLA)
|
CONSTRAINT GANAR_MEDALLA_FK FOREIGN KEY (ID_MEDALLA) REFERENCES MEDALLA(ID_MEDALLA)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE PARTICIPAR_COMPETENCIA(
|
CREATE TABLE PARTICIPAR_COMPETENCIA(
|
||||||
ID_COMPETENCIA NUMBER,
|
ID_COMPETENCIA NUMBER,
|
||||||
ID_ATLETA NUMBER,
|
ID_ATLETA NUMBER,
|
||||||
FECHA DATE,
|
FECHA DATE,
|
||||||
|
CONSTRAINT PARTICIPAR_COMPETENCIA_PK PRIMARY KEY (ID_COMPETENCIA, ID_ATLETA, FECHA),
|
||||||
CONSTRAINT PARTICIPAR_COMPETENCIA_COMPETENCIA_FK FOREIGN KEY (ID_COMPETENCIA) REFERENCES COMPETENCIA(ID_COMPETENCIA),
|
CONSTRAINT PARTICIPAR_COMPETENCIA_COMPETENCIA_FK FOREIGN KEY (ID_COMPETENCIA) REFERENCES COMPETENCIA(ID_COMPETENCIA),
|
||||||
CONSTRAINT PARTICIPAR_COMPETENCIA_ATLETA_FK FOREIGN KEY (ID_ATLETA) REFERENCES ATLETA(ID_ATLETA)
|
CONSTRAINT PARTICIPAR_COMPETENCIA_ATLETA_FK FOREIGN KEY (ID_ATLETA) REFERENCES ATLETA(ID_ATLETA)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE PARTICIPAR_PRECOMPETENCIA(
|
CREATE TABLE PARTICIPAR_PRECOMPETENCIA(
|
||||||
ID_PRECOMPETENCIA NUMBER,
|
ID_PRECOMPETENCIA NUMBER,
|
||||||
ID_ATLETA NUMBER,
|
ID_ATLETA NUMBER,
|
||||||
PUNTAJE NUMBER,
|
PUNTAJE NUMBER,
|
||||||
FECHA DATE,
|
FECHA DATE,
|
||||||
|
CONSTRAINT PARTICIPAR_PRECOMPETENCIA_PK PRIMARY KEY (ID_PRECOMPETENCIA, ID_ATLETA, FECHA),
|
||||||
CONSTRAINT PARTICIPAR_PRECOMPETENCIA_PRECOMPETENCIA_FK FOREIGN KEY (ID_PRECOMPETENCIA) REFERENCES PRECOMPETENCIA(ID_PRECOMPETENCIA),
|
CONSTRAINT PARTICIPAR_PRECOMPETENCIA_PRECOMPETENCIA_FK FOREIGN KEY (ID_PRECOMPETENCIA) REFERENCES PRECOMPETENCIA(ID_PRECOMPETENCIA),
|
||||||
CONSTRAINT PARTICIPAR_PRECOMPETENCIA_ATLETA_FK FOREIGN KEY (ID_ATLETA) REFERENCES ATLETA(ID_ATLETA)
|
CONSTRAINT PARTICIPAR_PRECOMPETENCIA_ATLETA_FK FOREIGN KEY (ID_ATLETA) REFERENCES ATLETA(ID_ATLETA)
|
||||||
);
|
);
|
||||||
|
@ -11,9 +11,9 @@ BEGIN
|
|||||||
SELECT MAX(ID_CIUDAD) INTO v_id_ciudad FROM CIUDAD;
|
SELECT MAX(ID_CIUDAD) INTO v_id_ciudad FROM CIUDAD;
|
||||||
|
|
||||||
IF v_id_ciudad IS NULL THEN
|
IF v_id_ciudad IS NULL THEN
|
||||||
: NEW.ID_CIUDAD := 1;
|
:NEW.ID_CIUDAD := 1;
|
||||||
ELSE
|
ELSE
|
||||||
: NEW.ID_CIUDAD := v_id_ciudad + 1;
|
:NEW.ID_CIUDAD := v_id_ciudad + 1;
|
||||||
END IF;
|
END IF;
|
||||||
END;
|
END;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user