Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/08/2007, 17:15
El_fenix
 
Fecha de Ingreso: junio-2006
Mensajes: 137
Antigüedad: 17 años, 11 meses
Puntos: 0
ayuda con script

Hola a todos en el Foro

Quisiera que me ayudaran en lo siguiente tengo las siguientes tablas

Código:
/*==============================================================*/
/* Table: VOLUNTARIO                                            */
/*==============================================================*/
create table if not exists VOLUNTARIO
(
   VOL_RUT                        varchar(10)                    not null,
   VOL_NOMBRES                    varchar(30)                    not null,
   VOL_APE_PATERNO                varchar(30)                    not null,
   VOL_APE_MATERNO                varchar(30)                    not null,
   VOL_NACIONALIDAD               varchar(30)                    not null,
   VOL_FECHA_NAC                  date                           not null,
   VOL_SEXO                       char(1)                        not null,
   VOL_EDAD                       smallint                       not null,
   VOL_ESTADO_CIVIL               varchar(3)                     not null,
   VOL_DIRECCION                  varchar(50)                    not null,
   VOL_SECTOR                     varchar(30)			 not null,
   VOL_CIUDAD                     varchar(20)			 not null,
   VOL_TELEFONO_CASA              numeric(9,0)                   not null,
   VOL_TELEFONO_CTO               numeric(9,0)                   not null,
   VOL_CELULAR                    numeric(9,0),
   VOL_CORREO                     varchar(30),
   VOL_TIPO                       varchar(2)                     not null,
   VOL_FOTO                       varchar(40)                    not null,
   VOL_G_SANGRE                   varchar(10)                    not null,
   VOL_FECHA_REGISTRO             datetime			 not null,
   VOL_FECHA_ACT                  datetime			 not null,
   VOL_USUARIO_ACT                varchar(8) 			 not null,
   primary key (VOL_RUT)
)ENGINE=INNODB;

/*==============================================================*/
/* Table: ASISTENCIA                                            */
/*==============================================================*/
create table if not exists ASISTENCIA
(
   PAR_ID                         smallint                       not null,
   PAR_PERIODO                    smallint                       not null,
   VOL_RUT                        varchar(10)                    not null,
   ASI_EXCUSADO                   char(1)                        not null,
   ASI_FECHA_REGISTRO             datetime                       not null,
   ASI_FECHA_ACT                  datetime                       not null,
   ASI_USUARIO_ACT                varchar(8)                     not null,
   primary key (PAR_ID, PAR_PERIODO, VOL_RUT),
   INDEX (PAR_ID, PAR_PERIODO),
   FOREIGN KEY (PAR_ID, PAR_PERIODO)
	REFERENCES PARTE(PAR_ID, PAR_PERIODO)
    	ON UPDATE CASCADE ON DELETE CASCADE,
   INDEX (VOL_RUT),
   FOREIGN KEY (VOL_RUT)
	REFERENCES VOLUNTARIO(VOL_RUT)
        ON UPDATE CASCADE ON DELETE CASCADE
)ENGINE=INNODB;


/*==============================================================*/
/* Table: HOJA_DE_VIDA                                          */
/*==============================================================*/
create table if not exists HOJA_DE_VIDA
(
   HDV_FOLIO                      smallint                       not null,
   VOL_RUT                        varchar(10)                    not null,
   HDV_FECHA_POST                 date                           not null,
   HDV_FECHA_ACEP_HDG             date                           not null,
   HDV_ANIOS_SERVICIO             smallint                       not null,
   HDV_FECHA_REGISTRO             datetime                       not null,
   HDV_FECHA_ACT                  datetime                       not null,
   HDV_USUARIO_ACT                varchar(8)                     not null,
   primary key (HDV_FOLIO),
   INDEX (VOL_RUT),
   FOREIGN KEY (VOL_RUT)
	REFERENCES VOLUNTARIO(VOL_RUT)
    	ON UPDATE CASCADE
)ENGINE=INNODB;
El tema es que al eliminar a un voluntario automaticamente borrara su hoja de vida y eso no es lo que necesito. Lo que quiero es que al eliminar un voluntario solo elimine el voluntario y deje intacta la hoja de vida, el problema esta en que la tabla voluntario envia como foranea su clave a la tabla hoja de vida y por dependencia borrara todo registro .

Espero que se haya entendido mi consulta.

Agradecido de antemano

Chauz