CREATE TABLE AFILIADO(ID_AFI INTEGER NOT NULL ,ID_TIPO_OPE
INTEGER NOT NULL ,ID_TIPO_DOC INTEGER NOT NULL ,COD_AFI
VARCHAR2(20) NOT NULL ,ID_MOD_COB INTEGER NOT NULL
,AP_PATERNO_AFILIADO VARCHAR2(20) NOT NULL ,AP_MATERNO_AFILIADO
VARCHAR2(20) NOT NULL ,NOM_AFI VARCHAR2(20) NOT NULL ,TELF_AFI
char(9) NULL ,FEC_NAC_AFI DATE NULL ,SEXO_AFI CHAR(1) NOT NULL
,EMAIL_AFI VARCHAR2(30) NULL ,CELULAR_AFI CHAR(9) NULL ,ID_TIPO
INTEGER NOT NULL ,ID_EC INTEGER NULL ,ID_VINCULO INTEGER NOT NULL
,NUM_DOCUMENTO_IDENT CHAR(8) NOT NULL ,ID_EMP INTEGER NOT NULL
,ID_DERECH INTEGER NOT NULL ,ID_DISTR INTEGER NOT NULL
,ID__EMP_PRESTADORA INTEGER NOT NULL ,ID_PROVI INTEGER NOT NULL
,ID_ZONA INTEGER NOT NULL ,ID_DEP INTEGER NOT NULL
,ID_TIPO_IDENTIDAD INTEGER NOT NULL ,ESTADO_AFILIADO VARCHAR2(15)
NOT NULL ,ID_HI INTEGER NOT NULL ,TIPO_MOTIVO_BAJA_DH VARCHAR2(15)
NULL );
ALTER TABLE AFILIADO ADD CONSTRAINT UK_EMAIL
UNIQUE(EMAIL_AFI);ALTER TABLE AFILIADO ADD CONSTRAINT UK_DNIA
UNIQUE(NUM_DOCUMENTO_IDENT);ALTER TABLE AFILIADO ADD CONSTRAINT
PK_AFILIADO PRIMARY KEY (ID_AFI);
create or replace procedure usp_insetar_AFILIADO(ID_AFI in
int,ID_TIPO_OPE in int,ID_TIPO_DOC in int,COD_AFI int varchar2
,ID_MOD_COB in int ,AP_PATERNO_AFILIADO in varchar2
,AP_MATERNO_AFILIADO in varchar2 ,NOM_AFI in varchar2 ,TELF_AFI in
char ,FEC_NAC_AFI in date ,SEXO_AFI in char ,EMAIL_AFI in varchar2
,CELULAR_AFI in char ,ID_TIPO in int ,ID_EC in int,ID_VINCULO in
int ,NUM_DOCUMENTO_IDENT in char,ID_EMP in int ,ID_DERECH in int
,ID_DISTR in int ,ID__EMP_PRESTADORA in int,ID_PROVI in int
,ID_ZONA in int ,ID_DEP in int,ID_TIPO_IDENTIDAD in int
,ESTADO_AFILIADO in int ,ID_HI INTEGER in int ,TIPO_MOTIVO_BAJA_DH
in varchar2)ASBEGINinsert into
afiliar_derecho_habiente(ID_AFI,ID_TIPO_OPE,ID_TIPO_DOC,COD_AFI
,ID_MOD_COB,AP_PATERNO_AFILIADO,AP_MATERNO_AFILIADO
,NOM_AFI,TELF_AFI,FEC_NAC_AFI ,SEXO_AFI ,EMAIL_AFI ,CELULAR_AFI
,ID_TIPO ,ID_EC ,ID_VINCULO,NUM_DOCUMENTO_IDENT,ID_EMP,ID_DERECH
,ID_DISTR ,ID__EMP_PRESTADORA ,ID_PROVI,ID_ZONA ,ID_DEP
,ID_TIPO_IDENTIDAD ,ESTADO_AFILIADO ,ID_HI INTEGER
,TIPO_MOTIVO_BAJA_DH ) values (.nextVal,ID_TIPO_DOC,COD_AFI
,ID_MOD_COB,AP_PATERNO_AFILIADO,AP_MATERNO_AFILIADO
,NOM_AFI,TELF_AFI,FEC_NAC_AFI ,SEXO_AFI ,EMAIL_AFI ,CELULAR_AFI
,ID_TIPO ,ID_EC ,ID_VINCULO,NUM_DOCUMENTO_IDENT,ID_EMP,ID_DERECH
,ID_DISTR ,ID__EMP_PRESTADORA ,ID_PROVI,ID_ZONA ,ID_DEP
,ID_TIPO_IDENTIDAD ,ESTADO_AFILIADO ,ID_HI INTEGER
,TIPO_MOTIVO_BAJA_DH );COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_AFILIADO;
CREATE TABLE Afiliar_Derecho_Habiente(ID_DERECH INTEGER NOT NULL
,AP_MATERNO_DA VARCHAR2(20) NOT NULL ,AP_PATERNO_DA VARCHAR2(20)
NOT NULL ,NOM_DA VARCHAR2(20) NOT NULL ,INIC_VIN_DA DATE NOT NULL
,COD_EST_CIVI VARCHAR2(20) NOT NULL ,ID_VINCULO INTEGER NOT NULL
,ID_EC INTEGER NOT NULL ,COD_DH VARCHAR(20) NOT NULL );
ALTER TABLE Afiliar_Derecho_Habiente ADD CONSTRAINT UK_DH
UNIQUE(cod_dh);ALTER TABLE Afiliar_Derecho_Habiente ADD CONSTRAINT
PK_Afiliar_Derecho_Habiente PRIMARY KEY (ID_DERECH);create or
replace procedure usp_insetar_derecho_habiente(AP_MATERNO_DA in
VARCHAR2 ,AP_PATERNO_DA in VARCHAR2,NOM_DA in VARCHAR2,INIC_VIN_DA
in DATE ,COD_EST_CIVI in VARCHAR2 ,ID_VINCULO in INT ,ID_EC in
INT,COD_DH in VARCHAR2
)ASBEGINinsert into
afiliar_derecho_habiente(ID_DERECH,AP_MATERNO_DA
,AP_PATERNO_DA,NOM_DA,INIC_VIN_DA ,COD_EST_CIVI,ID_VINCULO,ID_EC
,COD_DH ) values (.nextVal,AP_MATERNO_DA
,AP_PATERNO_DA,NOM_DA,INIC_VIN_DA ,COD_EST_CIVI,ID_VINCULO,ID_EC
,COD_DH );COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_derecho_habiente;
CREATE TABLE Afiliar_Hijo_Incapacitado(ID_HI INTEGER NOT NULL
,COD_HI VARCHAR2(20) NOT NULL ,AP_PATERNO_HI VARCHAR2(30) NOT NULL
,AP_MATERNO_HI VARCHAR2(30) NOT NULL ,NOM_HI VARCHAR(40) NOT NULL
,NUM_RESOL_HI CHAR(9) NOT NULL ,FEC_NAC_HI DATE NOT NULL ,SEXO_HI
CHAR(1) NOT NULL ,ID_TIPO_DOC INTEGER NOT NULL ,DIRECCION
VARCHAR2(100) NOT NULL );
ALTER TABLE Afiliar_Hijo_Incapacitado ADD CONSTRAINT
UK_NUM_RESOL_HI UNIQUE(cod_hi);ALTER TABLE
Afiliar_Hijo_Incapacitado ADD CONSTRAINT
PK_Afiliar_Hijo_Incapacitado PRIMARY KEY (ID_HI);create or replace
procedure usp_insetar_derecho_habiente(COD_HI in VARCHAR2
,AP_PATERNO_HI in VARCHAR2 ,AP_MATERNO_HI in VARCHAR2,NOM_HI in
VARCHAR,NUM_RESOL_HI in CHAR,FEC_NAC_HI in DATE ,SEXO_HI in
CHAR,ID_TIPO_DOC in INT,DIRECCION in VARCHAR2
)ASBEGINinsert into
afiliar_derecho_habiente(ID_HI,COD_HI,AP_PATERNO_HI
,AP_MATERNO_HI,NOM_HI ,NUM_RESOL_HI,FEC_NAC_HI ,SEXO_HI
,ID_TIPO_DOC ,DIRECCION ) values (.nextVal,COD_HI,AP_PATERNO_HI
,AP_MATERNO_HI,NOM_HI ,NUM_RESOL_HI,FEC_NAC_HI ,SEXO_HI
,ID_TIPO_DOC ,DIRECCION);COMMIT;EXCEPTIONWHEN OTHERS
THENROLLBACK;END usp_insetar_derecho_habiente;
CREATE TABLE Bitacora(Cod_Usuario VARCHAR2(20) NOT NULL
,AP_PATERNO_Usu VARCHAR2(20) NULL ,AP_MATERNO_Usu VARCHAR2(20) NULL
,NOM_Usu VARCHAR2(20) NULL ,TRANSA VARCHAR2(20) NULL ,FECHA DATE
NULL ,USUARIO VARCHAR2(20) NULL ,ESTACION VARCHAR2(20) NULL );
CREATE TABLE Centro_Asistencial(ID_CENT_ASIST INTEGER NOT NULL
,NOM_CENT_ASIST VARCHAR2(20) NULL );ALTER TABLE
Afiliar_Hijo_Incapacitado ADD CONSTRAINT UK_NUM_RESOL_HI
UNIQUE(NOM_CENT_ASIST);
CREATE UNIQUE INDEX XPKCentro_Asistencial ON
Centro_Asistencial(ID_CENT_ASIST ASC);
ALTER TABLE Centro_Asistencial ADD CONSTRAINT
XPKCentro_Asistencial PRIMARY KEY (ID_CENT_ASIST);create or replace
procedure usp_insetar_Centro_Asistencial(NOM_CENT_ASIST in
VARCHAR2)ASBEGINinsert into
Centro_Asistencial(ID_CENT_ASIST,NOM_CENT_ASIST) values
(.nextVal,NOM_CENT_ASIST);COMMIT;EXCEPTIONWHEN OTHERS
THENROLLBACK;END usp_insetar_Centro_Asistencial;
CREATE TABLE Departamento(ID_DEP INTEGER NOT NULL ,ID_PAIS
INTEGER NOT NULL ,NOM_DEP VARCHAR2(20) NOT NULL );
CREATE UNIQUE INDEX XPKDepartamento ON Departamento(ID_DEP
ASC);
ALTER TABLE DepartamentoADD CONSTRAINT XPKDepartamento PRIMARY
KEY (ID_DEP);create or replace procedure
usp_insetar_Departamento(ID_PAIS in INT ,NOM_DEP in VARCHAR2
)ASBEGINinsert into Departamento(ID_DEP,ID_PAIS ,NOM_DEP) values
(.nextVal,ID_PAIS ,NOM_DEP);COMMIT;EXCEPTIONWHEN OTHERS
THENROLLBACK;END usp_insetar_Departamento;
CREATE TABLE Distrito(ID_DISTR INTEGER NOT NULL ,ID_PROVI
INTEGER NOT NULL ,NOM_DISTR VARCHAR2(35) NOT NULL );
CREATE UNIQUE INDEX XPKDistrito ON Distrito(ID_DISTR ASC);
ALTER TABLE Distrito ADD CONSTRAINT XPKDistrito PRIMARY KEY
(ID_DISTR);create or replace procedure
usp_insetar_Distrito(ID_PROVI in INT ,NOM_DISTR in VARCHAR2
)ASBEGINinsert into Distrito(ID_DISTR,ID_PROVI,NOM_DISTR) values
(.nextVal,ID_PROVI,NOM_DISTR);COMMIT;EXCEPTIONWHEN OTHERS
THENROLLBACK;END usp_insetar_Distrito;
CREATE TABLE Empleado(ID_EMPLEADO INTEGER NOT NULL ,
COD_EMPLEADO VARCHAR2(10) NOT NULL ,AP_PATERNO_EMPLEADO
VARCHAR2(20) NOT NULL ,AP_MATERNO_EMPLEADO VARCHAR2(20) NOT NULL
,NOM_EMPLEADO VARCHAR2(20) NULL ,Fecha_Nac_EMPLEADO DATE NOT NULL
,ARE_ESSALUD_EMPLEADO VARCHAR2(18) NOT NULL
,DEPART_ESSALUD_EMPLEADO VARCHAR2(18) NOT NULL );
CREATE UNIQUE INDEX XPKEmpleado ON Empleado(ID_EMPLEADO
ASC);
ALTER TABLE Empleado ADD CONSTRAINT XPKEmpleado PRIMARY KEY
(ID_EMPLEADO);
CREATE TABLE Empresa(ID_EMP INTEGER NOT NULL ,NOM_EMP
VARCHAR2(35) NOT NULL ,TELF_EMP CHAR(9) NULL ,WEB_EMP VARCHAR(38)
NULL ,EMAIL_EMP VARCHAR2(35) NULL ,ID_TIPO_EMP INTEGER NOT NULL
,RUC_EMP CHAR(20) NOT NULL ,RAZON_SOCIAL_EMP VARCHAR2(100) NULL
);
CREATE UNIQUE INDEX XPKEmpresa ON Empresa(ID_EMP ASC);
ALTER TABLE Empresa ADD CONSTRAINT XPKEmpresa PRIMARY KEY
(ID_EMP);create or replace procedure usp_insetar_Empresa(NOM_EMP in
VARCHAR2 ,TELF_EMP in CHAR,WEB_EMP in VARCHAR,EMAIL_EMP in
VARCHAR2,ID_TIPO_EMP in INT,RUC_EMP in CHAR(,RAZON_SOCIAL_EMP in
VARCHAR2)ASBEGINinsert into
Empresa(ID_EMP,NOM_EMP,TELF_EMP,WEB_EMP,EMAIL_EMP,ID_TIPO_EMP,RUC_EMP,RAZON_SOCIAL_EMP)
values
(.nextVal,NOM_EMP,TELF_EMP,WEB_EMP,EMAIL_EMP,ID_TIPO_EMP,RUC_EMP,RAZON_SOCIAL_EMP);COMMIT;EXCEPTIONWHEN
OTHERS THENROLLBACK;END usp_insetar_Empresa;
CREATE TABLE Empresa_Prestadora(ID__EMP_PRESTADORA INTEGER NOT
NULL ,NOM_EMP_PRESTADORA VARCHAR2(28) NOT NULL );
CREATE UNIQUE INDEX XPKEmpresa_Prestadora ON
Empresa_Prestadora(ID__EMP_PRESTADORA ASC);
ALTER TABLE Empresa_Prestadora ADD CONSTRAINT
XPKEmpresa_Prestadora PRIMARY KEY (ID__EMP_PRESTADORA);create or
replace procedure usp_insetar_Empresa_Prestadora(NOM_EMP_PRESTADORA
in VARCHAR2
)ASBEGINinsert into
Empresa_Prestadora(ID__EMP_PRESTADORA,NOM_EMP_PRESTADORA) values
(.nextVal,NOM_EMP_PRESTADORA);COMMIT;EXCEPTIONWHEN OTHERS
THENROLLBACK;END usp_insetar_Empresa_Prestadora;
CREATE TABLE Estado_Civil(ID_EC INTEGER NOT NULL ,NOM_EC
VARCHAR2(10) NOT NULL );
CREATE UNIQUE INDEX XPKEstado_Civil ON Estado_Civil(ID_EC
ASC);
ALTER TABLE Estado_Civil ADD CONSTRAINT XPKEstado_Civil PRIMARY
KEY (ID_EC);create or replace procedure
usp_insetar_Estado_Civil(NOM_EC in VARCHAR2)ASBEGINinsert into
Estado_Civil(ID_EC,NOM_EC) values
(.nextVal,NOM_EC);COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_Estado_Civil;
CREATE TABLE Historia_Clinica(ID_HC INTEGER NOT NULL
,ID_CENT_ASIST INTEGER NOT NULL ,ID_CIE10 INTEGER NOT NULL ,COD_HC
VARCHAR2(15) NOT NULL ,ID_TES VARCHAR2(20) NOT NULL
,ID_TIP_EMERGENCIA INTEGER NOT NULL ,ENFERMEDAD_ACTUAL_HC
VARCHAR2(600) NULL ,ANTECEDENTES_PERSONAL_HC VARCHAR2(500) NULL
,ANTECEDENTES_FAMILIARES_HC VARCHAR2(500) NULL
,REVISION_ANAMNESICA_HC VARCHAR2(500) NULL ,EXAMEN_CLINICO_HC
VARCHAR2(500) NULL ,DIAGNOSTICO_HC VARCHAR2(500) NULL
,TRATAMIENTO_INDICACION_HC VARCHAR2(500) NULL ,FECH_HC DATE NULL
,ID_USUARIO INTEGER NOT NULL );
CREATE UNIQUE INDEX XPKHistoria_Clinica ON
Historia_Clinica(ID_HC ASC);
ALTER TABLE Historia_Clinica ADD CONSTRAINT XPKHistoria_Clinica
PRIMARY KEY (ID_HC);create or replace procedure
usp_insetar_Historia_Clinica(ID_HC in INT,ID_CENT_ASIST in
INT,ID_CIE10 in INT,COD_HC in VARCHAR2,ID_TES in
VARCHAR2,ID_TIP_EMERGENCIA in INT,ENFERMEDAD_ACTUAL_HC in VARCHAR2
,ANTECEDENTES_PERSONAL_HC in VARCHAR2,ANTECEDENTES_FAMILIARES_HC in
VARCHAR2,REVISION_ANAMNESICA_HC in VARCHAR2 ,EXAMEN_CLINICO_HC in
VARCHAR2,DIAGNOSTICO_HC in VARCHAR2,TRATAMIENTO_INDICACION_HC in
VARCHAR2,FECH_HC in DATE,ID_USUARIO in INT
)ASBEGINinsert into Historia_Clinica(ID_HC,ID_CENT_ASIST
,ID_CIE10,COD_HC ,ID_TES ,ID_TIP_EMERGENCIA ,ENFERMEDAD_ACTUAL_HC
,ANTECEDENTES_PERSONAL_HC,ANTECEDENTES_FAMILIARES_HC,REVISION_ANAMNESICA_HC,EXAMEN_CLINICO_HC,DIAGNOSTICO_HC
in VARCHAR2,TRATAMIENTO_INDICACION_HC,FECH_HC ,ID_USUARIO) values
(.nextVal,ID_CENT_ASIST ,ID_CIE10,COD_HC ,ID_TES ,ID_TIP_EMERGENCIA
,ENFERMEDAD_ACTUAL_HC
,ANTECEDENTES_PERSONAL_HC,ANTECEDENTES_FAMILIARES_HC,REVISION_ANAMNESICA_HC,EXAMEN_CLINICO_HC,DIAGNOSTICO_HC
in VARCHAR2,TRATAMIENTO_INDICACION_HC,FECH_HC
,ID_USUARIO);COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_Historia_Clinica;
CREATE TABLE Modalidad_Cobertura(ID_MOD_COB INTEGER NOT NULL
,NOM_MOD_COB VARCHAR2(35) NOT NULL );
CREATE UNIQUE INDEX XPKModalidad_Cobertura ON
Modalidad_Cobertura(ID_MOD_COB ASC);
ALTER TABLE Modalidad_Cobertura ADD CONSTRAINT
XPKModalidad_Cobertura PRIMARY KEY (ID_MOD_COB);create or replace
procedure usp_insetar_mod_cob(nom in varchar2)ASBEGINinsert into
modalidad_cobertura(id_mod_cob,nom_mod_cob) values
(.nextVal,nom);COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_mod_cob;
CREATE TABLE Paciente(ID_PACIENTE INTEGER NOT NULL ,ID_AFI
INTEGER NOT NULL ,ID_CENT_ASIST INTEGER NOT NULL ,ID_DERECH INTEGER
NOT NULL ,ESTADO_PACIENTE VARCHAR2(15) NOT NULL ,COD_PACIENTE
varCHAR(10) NOT NULL ,ID_HI INTEGER NOT NULL ,ID_HC INTEGER NOT
NULL ,FECH_REG_PAC DATE NOT NULL );
CREATE UNIQUE INDEX XPKPaciente ON Paciente(ID_PACIENTE
ASC);
ALTER TABLE Paciente ADD CONSTRAINT XPKPaciente PRIMARY KEY
(ID_PACIENTE);create or replace procedure
usp_insetar_Paciente(ID_AFI in INT ,ID_CENT_ASIST in INT ,ID_DERECH
in INT ,ESTADO_PACIENTE in VARCHAR2 ,COD_PACIENTE in varCHAR ,ID_HI
in INT ,ID_HC in INT ,FECH_REG_PAC in DATE
)ASBEGINinsert into
Paciente(ID_PACIENTE,ID_AFI,ID_CENT_ASIST,ID_DERECH,ESTADO_PACIENTE,COD_PACIENTE,ID_HI,ID_HC,FECH_REG_PAC
) values
(.nextVal,ID_CENT_ASIST,ID_DERECH,ESTADO_PACIENTE,COD_PACIENTE,ID_HI,ID_HC,FECH_REG_PAC);COMMIT;EXCEPTIONWHEN
OTHERS THENROLLBACK;END usp_insetar_Paciente;
CREATE TABLE Paises(ID_PAIS INTEGER NOT NULL ,NOM_PAIS
VARCHAR2(20) NOT NULL );
CREATE UNIQUE INDEX XPKPaises ON Paises(ID_PAIS ASC);
ALTER TABLE Paises ADD CONSTRAINT XPKPaises PRIMARY KEY
(ID_PAIS);Create or replace procedure usp_insetar_paises(nom in
varchar2)ASBEGINinsert into paises(id_pais,nom_pais) values
(se_pais.nextVal,nom);COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_paises;
CREATE TABLE Provincia(ID_PROVI INTEGER NOT NULL ,ID_DEP INTEGER
NOT NULL ,NOM_PROVINCIA VARCHAR2(35) NOT NULL );
CREATE UNIQUE INDEX XPKProvincia ON Provincia(ID_PROVI ASC);
ALTER TABLE Provincia ADD CONSTRAINT XPKProvincia PRIMARY KEY
(ID_PROVI);create or replace procedure usp_insetar_provincia(id_dep
in int,nom in varchar2)ASBEGINinsert into
provincia(id_provi,id_dep,nom_provincia) values
(.nextVal,id_dep,nom);COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_provincia;
CREATE TABLE Roles(ID_Rol INTEGER NOT NULL ,NOM_Rol VARCHAR2(20)
NULL );
CREATE UNIQUE INDEX XPKRoles ON Roles(ID_Rol ASC);
ALTER TABLE Roles ADD CONSTRAINT XPKRoles PRIMARY KEY
(ID_Rol);create or replace procedure usp_insetar_Roles(NOM_Rol in
VARCHAR2)ASBEGINinsert into Roles(ID_Rol ,NOM_Rol) values
(.nextVal,NOM_Rol);COMMIT;EXCEPTIONWHEN OTHERS THENROLLBACK;END
usp_insetar_Roles;
CREATE TABLE Testigo(ID_TES VARCHAR2(20) NOT NULL
,AP_PATERNO_TEST VARCHAR2(20) NULL ,NOM_TEST VARCHAR2(20) NULL
,AP_MATERNO_TEST VARCHAR2(20) NULL ,ID_TIPO_DOC INTEGER NOT NULL
,NUM_DOC_TEST CHAR(8) NULL ,ID_VINCULO INTEGER NOT NULL
,DIRECCION_TEST VARCHAR2(500) NULL ,TELEFON_TEST VARCHAR2(9) NULL
);
CREATE UNIQUE INDEX XPKTestigo ON Testigo(ID_TES ASC);
ALTER TABLE Testigo ADD CONSTRAINT XPKTestigo PRIMARY KEY
(ID_TES);
CREATE TABLE TIpo_Afiliacion(ID_TIPO INTEGER NOT NULL ,NOM_TIPO
VARCHAR2(30) NOT NULL );
CREATE UNIQUE INDEX XPKTIpo_Afiliacion ON
TIpo_Afiliacion(ID_TIPO ASC);
ALTER TABLE TIpo_Afiliacion ADD CONSTRAINT XPKTIpo_Afiliacion
PRIMARY KEY (ID_TIPO);
CREATE TABLE TIPO_CIE10(ID_CIE10 INTEGER NOT NULL ,NOM_CIE10
VARCHAR2(20) NULL );
CREATE UNIQUE INDEX XPKTIPO_CIE10 ON TIPO_CIE10(ID_CIE10
ASC);
ALTER TABLE TIPO_CIE10 ADD CONSTRAINT XPKTIPO_CIE10 PRIMARY KEY
(ID_CIE10);
CREATE TABLE Tipo_Docum_Identidad(ID_TIPO_DOC INTEGER NOT NULL
,NOM_TIPO_DOC VARCHAR2(25) NOT NULL );
CREATE UNIQUE INDEX XPKTipo_Docum_Identidad ON
Tipo_Docum_Identidad(ID_TIPO_DOC ASC);
ALTER TABLE Tipo_Docum_Identidad ADD CONSTRAINT
XPKTipo_Docum_Identidad PRIMARY KEY (ID_TIPO_DOC);
CREATE TABLE TIPO_EMERGENCIA(ID_TIP_EMERGENCIA INTEGER NOT NULL
,NOM_TIP_EMERGENCIA VARCHAR2(25) NULL );
CREATE UNIQUE INDEX XPKTIPO_EMERGENCIA ON
TIPO_EMERGENCIA(ID_TIP_EMERGENCIA ASC);
ALTER TABLE TIPO_EMERGENCIA ADD CONSTRAINT XPKTIPO_EMERGENCIA
PRIMARY KEY (ID_TIP_EMERGENCIA);
CREATE TABLE Tipo_Empresa(ID_TIPO_EMP INTEGER NOT NULL
,NOM_TIPO_EMP VARCHAR2(25) NOT NULL );
CREATE UNIQUE INDEX XPKTipo_Empresa ON Tipo_Empresa(ID_TIPO_EMP
ASC);
ALTER TABLE Tipo_Empresa ADD CONSTRAINT XPKTipo_Empresa PRIMARY
KEY (ID_TIPO_EMP);
CREATE TABLE Tipo_Identidad_Con_Essalud(ID_TIPO_IDENTIDAD
INTEGER NOT NULL ,NOM_TIPO_IDENTIDAD VARCHAR2(25) NOT NULL );
CREATE UNIQUE INDEX XPKTipo_Identidad_Con_Essalud ON
Tipo_Identidad_Con_Essalud(ID_TIPO_IDENTIDAD ASC);
ALTER TABLE Tipo_Identidad_Con_Essalud ADD CONSTRAINT
XPKTipo_Identidad_Con_Essalud PRIMARY KEY (ID_TIPO_IDENTIDAD);
CREATE TABLE Tipo_Operacion(ID_TIPO_OPE INTEGER NOT NULL
,NOM_TIPO_OPE VARCHAR2(7) NOT NULL );
CREATE UNIQUE INDEX XPKTipo_Operacion ON
Tipo_Operacion(ID_TIPO_OPE ASC);
ALTER TABLE Tipo_Operacion ADD CONSTRAINT XPKTipo_Operacion
PRIMARY KEY (ID_TIPO_OPE);
CREATE TABLE Tipo_Zona(ID_ZONA INTEGER NOT NULL ,NOM_ZONA
VARCHAR2(20) NOT NULL );
CREATE UNIQUE INDEX XPKTipo_Zona ON Tipo_Zona(ID_ZONA ASC);
ALTER TABLE Tipo_Zona ADD CONSTRAINT XPKTipo_Zona PRIMARY KEY
(ID_ZONA);
CREATE TABLE Usuarios(ID_USUARIO INTEGER NOT NULL ,ID_Rol
INTEGER NOT NULL ,USUARIO VARCHAR2(20) NULL ,PASS_USUARIO
VARCHAR2(20) NULL ,ID_EMPLEADO INTEGER NOT NULL );
CREATE UNIQUE INDEX XPKUsuario ON Usuario(ID_USUARIO ASC);
ALTER TABLE Usuario ADD CONSTRAINT XPKUsuario PRIMARY KEY
(ID_USUARIO);
CREATE TABLE Vinculo(ID_VINCULO INTEGER NOT NULL ,NOM_VINCULO
VARCHAR2(25) NOT NULL );
CREATE UNIQUE INDEX XPKVinculo ON Vinculo(ID_VINCULO ASC);
ALTER TABLE Vinculo ADD CONSTRAINT XPKVinculo PRIMARY KEY
(ID_VINCULO);
ALTER TABLE AFILIADOADD (CONSTRAINT R_EmpPrest_Afilia FOREIGN
KEY (ID__EMP_PRESTADORA) REFERENCES
Empresa_Prestadora(ID__EMP_PRESTADORA));
ALTER TABLE AFILIADOADD (CONSTRAINT R_TipIdentConEssalud_Afillia
FOREIGN KEY (ID_TIPO_IDENTIDAD) REFERENCES
Tipo_Identidad_Con_Essalud(ID_TIPO_IDENTIDAD));
ALTER TABLE AFILIADOADD (CONSTRAINT R_TipAfilia_Afilia FOREIGN
KEY (ID_TIPO) REFERENCES TIpo_Afiliacion(ID_TIPO));
ALTER TABLE AFILIADOADD (CONSTRAINT R_95 FOREIGN KEY (ID_EC)
REFERENCES Estado_Civil(ID_EC) ON DELETE SET NULL);
ALTER TABLE AFILIADOADD (CONSTRAINT R_Vin_Afilia FOREIGN KEY
(ID_VINCULO) REFERENCES Vinculo(ID_VINCULO));
ALTER TABLE AFILIADOADD (CONSTRAINT R_Empresa_Afilia FOREIGN KEY
(ID_EMP) REFERENCES Empresa(ID_EMP));
ALTER TABLE AFILIADOADD (CONSTRAINT R_HI_Afilia FOREIGN KEY
(ID_HI) REFERENCES Afiliar_Hijo_Incapacitado(ID_HI));
ALTER TABLE AFILIADOADD (CONSTRAINT R_DerecHabient_Afilia
FOREIGN KEY (ID_DERECH) REFERENCES
Afiliar_Derecho_Habiente(ID_DERECH));
ALTER TABLE AFILIADOADD (CONSTRAINT R_Dist_Afilia FOREIGN KEY
(ID_DISTR) REFERENCES Distrito(ID_DISTR));
ALTER TABLE AFILIADOADD (CONSTRAINT R_Prov_Afilia FOREIGN KEY
(ID_PROVI) REFERENCES Provincia(ID_PROVI));
ALTER TABLE AFILIADOADD (CONSTRAINT R_Depart_Afilia FOREIGN KEY
(ID_DEP) REFERENCES Departamento(ID_DEP));
ALTER TABLE AFILIADOADD (CONSTRAINT R_TipDocIdent_Afilia FOREIGN
KEY (ID_TIPO_DOC) REFERENCES
Tipo_Docum_Identidad(ID_TIPO_DOC));
ALTER TABLE AFILIADOADD (CONSTRAINT R_ModCobert_Afilia FOREIGN
KEY (ID_MOD_COB) REFERENCES Modalidad_Cobertura(ID_MOD_COB));
ALTER TABLE AFILIADOADD (CONSTRAINT R_TipOpe_Afilia FOREIGN KEY
(ID_TIPO_OPE) REFERENCES Tipo_Operacion(ID_TIPO_OPE));
ALTER TABLE AFILIADOADD (CONSTRAINT R_TipZona_Afilia FOREIGN KEY
(ID_ZONA) REFERENCES Tipo_Zona(ID_ZONA));
ALTER TABLE Afiliar_Derecho_HabienteADD (CONSTRAINT
R_VINCULO_DERCHO_HABIENTE FOREIGN KEY (ID_VINCULO) REFERENCES
Vinculo(ID_VINCULO));
ALTER TABLE Afiliar_Derecho_HabienteADD (CONSTRAINT
R_EstCiv_DercHabient FOREIGN KEY (ID_EC) REFERENCES
Estado_Civil(ID_EC));
ALTER TABLE Afiliar_Hijo_IncapacitadoADD (CONSTRAINT
R_DocIdent_Afilia FOREIGN KEY (ID_TIPO_DOC) REFERENCES
Tipo_Docum_Identidad(ID_TIPO_DOC));
ALTER TABLE DepartamentoADD (CONSTRAINT R_Pais_Depart FOREIGN
KEY (ID_PAIS) REFERENCES Paises(ID_PAIS));
ALTER TABLE DistritoADD (CONSTRAINT R_Prov_Distri FOREIGN KEY
(ID_PROVI) REFERENCES Provincia(ID_PROVI));
ALTER TABLE EmpresaADD (CONSTRAINT R_TipEmpresa_Empresa FOREIGN
KEY (ID_TIPO_EMP) REFERENCES Tipo_Empresa(ID_TIPO_EMP));
ALTER TABLE Historia_ClinicaADD (CONSTRAINT R_Test_HC FOREIGN
KEY (ID_TES) REFERENCES Testigo(ID_TES));
ALTER TABLE Historia_ClinicaADD (CONSTRAINT R_TipEmerg_HC
FOREIGN KEY (ID_TIP_EMERGENCIA) REFERENCES
TIPO_EMERGENCIA(ID_TIP_EMERGENCIA));
ALTER TABLE Historia_ClinicaADD (CONSTRAINT R_Usu_HC FOREIGN KEY
(ID_USUARIO) REFERENCES Usuario(ID_USUARIO));
ALTER TABLE Historia_ClinicaADD (CONSTRAINT R_CentAsist_HC
FOREIGN KEY (ID_CENT_ASIST) REFERENCES
Centro_Asistencial(ID_CENT_ASIST));
ALTER TABLE Historia_ClinicaADD (CONSTRAINT R_TipCIE10_HC
FOREIGN KEY (ID_CIE10) REFERENCES TIPO_CIE10(ID_CIE10));
ALTER TABLE PacienteADD (CONSTRAINT R_Afilia_Pac FOREIGN KEY
(ID_AFI) REFERENCES AFILIADO(ID_AFI));
ALTER TABLE PacienteADD (CONSTRAINT R_CentAsist_Pac FOREIGN KEY
(ID_CENT_ASIST) REFERENCES Centro_Asistencial(ID_CENT_ASIST));
ALTER TABLE PacienteADD (CONSTRAINT R_DH_PAC FOREIGN KEY
(ID_DERECH) REFERENCES Afiliar_Derecho_Habiente(ID_DERECH));
ALTER TABLE PacienteADD (CONSTRAINT R_HI_PAC FOREIGN KEY (ID_HI)
REFERENCES Afiliar_Hijo_Incapacitado(ID_HI));
ALTER TABLE PacienteADD (CONSTRAINT R_HC_PAC FOREIGN KEY (ID_HC)
REFERENCES Historia_Clinica(ID_HC));
ALTER TABLE ProvinciaADD (CONSTRAINT R_Depart_Prov FOREIGN KEY
(ID_DEP) REFERENCES Departamento(ID_DEP));
ALTER TABLE TestigoADD (CONSTRAINT R_TipDocIdent_Test FOREIGN
KEY (ID_TIPO_DOC) REFERENCES
Tipo_Docum_Identidad(ID_TIPO_DOC));
ALTER TABLE TestigoADD (CONSTRAINT R_Vin_Test FOREIGN KEY
(ID_VINCULO) REFERENCES Vinculo(ID_VINCULO));
ALTER TABLE UsuarioADD (CONSTRAINT R_Rol_User FOREIGN KEY
(ID_Rol) REFERENCES Roles(ID_Rol));
ALTER TABLE UsuarioADD (CONSTRAINT R_Empleado_User FOREIGN KEY
(ID_EMPLEADO) REFERENCES Empleado(ID_EMPLEADO));