hola estimados tengo un problema con mysql
y no se como arreglarlo al hacer un insert a una tabla que es clave foranea de otra me aparece el siguiente error
#1452 - Cannot add or update a child row: a foreign key constraint fails (`gimnasio`.`detallecliente`, CONSTRAINT `fk_detalleCliente_persona1` FOREIGN KEY (`usuario_RUT`) REFERENCES `usuario` (`RUT`) ON DELETE NO ACTION ON UPDATE NO ACTION)

aqui esta como esta compuestas las tablas a ver si alguien me puede ayudar

Código MySQL :

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';

CREATE SCHEMA IF NOT EXISTS `gimnasio` DEFAULT CHARACTER SET latin1 ;
USE `gimnasio` ;

-- -----------------------------------------------------
-- Table `gimnasio`.`perfil`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`perfil` (
  `idperfil` INT NOT NULL AUTO_INCREMENT ,
  `nombre` VARCHAR(45) NULL ,
  PRIMARY KEY (`idperfil`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`usuario`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`usuario` (
  `RUT` VARCHAR(11) NOT NULL ,
  `numCliente` INT(11) NOT NULL AUTO_INCREMENT ,
  `primerNombre` VARCHAR(450) NULL DEFAULT NULL ,
  `apellidoPaterno` VARCHAR(450) NULL DEFAULT NULL ,
  `direccion` VARCHAR(450) NULL DEFAULT NULL ,
  `comuna` VARCHAR(45) NULL DEFAULT NULL ,
  `ocupacion` VARCHAR(450) NULL DEFAULT NULL ,
  `fechaNacimiento` DATE NULL DEFAULT NULL ,
  `fonoCasa` VARCHAR(45) NULL DEFAULT NULL ,
  `fonoCelular` VARCHAR(45) NULL DEFAULT NULL ,
  `fonoEmergencia` VARCHAR(45) NULL DEFAULT NULL ,
  `perfil_idperfil` INT NOT NULL ,
  `usuario` VARCHAR(45) NULL ,
  `contrasena` VARCHAR(45) NULL ,
  `apellidoMaterno` VARCHAR(45) NULL ,
  `segundoNombre` VARCHAR(45) NULL ,
  `correoElectronico` VARCHAR(45) NULL ,
  PRIMARY KEY (`numCliente`, `RUT`, `perfil_idperfil`) ,
  INDEX `fk_persona_perfil1` (`perfil_idperfil` ASC) ,
  UNIQUE INDEX `numCliente_UNIQUE` (`numCliente` ASC) ,
  UNIQUE INDEX `RUT_UNIQUE` (`RUT` ASC) ,
  UNIQUE INDEX `usuario_UNIQUE` (`usuario` ASC) ,
  CONSTRAINT `fk_persona_perfil1`
    FOREIGN KEY (`perfil_idperfil` )
    REFERENCES `gimnasio`.`perfil` (`idperfil` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = MyISAM
AUTO_INCREMENT = 9
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `gimnasio`.`asistencia`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`asistencia` (
  `id` INT(11) NOT NULL AUTO_INCREMENT ,
  `dia` DATE NOT NULL ,
  `clientes_numCliente` INT(11) NOT NULL ,
  `clientes_RUT` VARCHAR(11) NOT NULL ,
  PRIMARY KEY (`id`, `clientes_numCliente`, `clientes_RUT`) ,
  INDEX `fk_asistencia_clientes` (`clientes_numCliente` ASC, `clientes_RUT` ASC) ,
  CONSTRAINT `fk_asistencia_clientes`
    FOREIGN KEY (`clientes_numCliente` , `clientes_RUT` )
    REFERENCES `gimnasio`.`usuario` (`numCliente` , `RUT` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = MyISAM
AUTO_INCREMENT = 9
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `gimnasio`.`evaluacion`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`evaluacion` (
  `id` INT(11) NOT NULL AUTO_INCREMENT ,
  `cuello` VARCHAR(100) NOT NULL ,
  `hombro` VARCHAR(100) NOT NULL ,
  `brazo` VARCHAR(100) NOT NULL ,
  `cintura` VARCHAR(100) NOT NULL ,
  `cadera` VARCHAR(100) NOT NULL ,
  `muslo` VARCHAR(100) NOT NULL ,
  `gemelo` VARCHAR(100) NOT NULL ,
  `subescapular` VARCHAR(100) NOT NULL ,
  `bicital` VARCHAR(100) NOT NULL ,
  `tripical` VARCHAR(100) NOT NULL ,
  `suprailiaco` VARCHAR(100) NOT NULL ,
  `abdominal` VARCHAR(100) NOT NULL ,
  `pantorrilla` VARCHAR(100) NOT NULL ,
  `abdomen` VARCHAR(100) NOT NULL ,
  `peso` VARCHAR(100) NOT NULL ,
  `fecha` DATE NOT NULL ,
  `imc` VARCHAR(100) NOT NULL ,
  `icc` VARCHAR(100) NOT NULL ,
  `persona_numCliente` INT(11) NOT NULL ,
  `persona_RUT` VARCHAR(11) NOT NULL ,
  PRIMARY KEY (`id`, `persona_numCliente`, `persona_RUT`) ,
  INDEX `fk_evaluaciones_persona1` (`persona_numCliente` ASC, `persona_RUT` ASC) ,
  CONSTRAINT `fk_evaluaciones_persona1`
    FOREIGN KEY (`persona_numCliente` , `persona_RUT` )
    REFERENCES `gimnasio`.`usuario` (`numCliente` , `RUT` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = MyISAM
AUTO_INCREMENT = 6
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `gimnasio`.`log`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`log` (
  `id` INT(11) NOT NULL AUTO_INCREMENT ,
  `error` VARCHAR(10000) NOT NULL ,
  `fecha` DATETIME NOT NULL ,
  `persona_numCliente` INT(11) NOT NULL ,
  `persona_RUT` VARCHAR(11) NOT NULL ,
  PRIMARY KEY (`id`) ,
  INDEX `fk_log_persona1` (`persona_numCliente` ASC, `persona_RUT` ASC) ,
  CONSTRAINT `fk_log_persona1`
    FOREIGN KEY (`persona_numCliente` , `persona_RUT` )
    REFERENCES `gimnasio`.`usuario` (`numCliente` , `RUT` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = MyISAM
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `gimnasio`.`versiones`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`versiones` (
  `id` INT(11) NOT NULL AUTO_INCREMENT ,
  `version` VARCHAR(100) NOT NULL ,
  `detalle` VARCHAR(10000) NOT NULL ,
  `fecha` DATETIME NOT NULL ,
  PRIMARY KEY (`id`) )
ENGINE = MyISAM
DEFAULT CHARACTER SET = latin1;


-- -----------------------------------------------------
-- Table `gimnasio`.`detalleCliente`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`detalleCliente` (
  `iddetalleCliente` INT NOT NULL AUTO_INCREMENT ,
  `usuario_RUT` VARCHAR(11) NOT NULL ,
  `lesiones` VARCHAR(45) NULL ,
  `enfermedadesCardiacas` VARCHAR(45) NULL ,
  `enfermedadesPrevias` VARCHAR(45) NULL ,
  `problemasSensoriales` VARCHAR(45) NULL ,
  `alergico` VARCHAR(45) NULL ,
  `realizoActividad5` VARCHAR(45) NULL ,
  `realizoActividad` VARCHAR(45) NULL ,
  `frecuencia` VARCHAR(45) NULL ,
  `tiempoDuracion` VARCHAR(45) NULL ,
  `horasDuerme` VARCHAR(45) NULL ,
  `fuma` VARCHAR(45) NULL ,
  `fumaCuanto` VARCHAR(45) NULL ,
  `bebe` VARCHAR(45) NULL ,
  `bebeTipo` VARCHAR(45) NULL ,
  `bebeFrecuencia` VARCHAR(45) NULL ,
  `cafe` VARCHAR(45) NULL ,
  `cafeTipo` VARCHAR(45) NULL ,
  PRIMARY KEY (`iddetalleCliente`, `usuario_RUT`) ,
  INDEX `fk_detalleCliente_persona1` (`usuario_RUT` ASC) ,
  CONSTRAINT `fk_detalleCliente_persona1`
    FOREIGN KEY (`usuario_RUT` )
    REFERENCES `gimnasio`.`usuario` (`RUT` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`planes`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`planes` (
  `idplanes` INT NOT NULL AUTO_INCREMENT ,
  `valor` VARCHAR(45) NULL ,
  `nombre` VARCHAR(45) NULL ,
  `detalle` VARCHAR(45) NULL ,
  `codigo` VARCHAR(45) NULL ,
  PRIMARY KEY (`idplanes`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`descuento`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`descuento` (
  `iddescuento` INT NOT NULL AUTO_INCREMENT ,
  `nombre` VARCHAR(45) NULL ,
  `valor` VARCHAR(45) NULL ,
  `tipo` VARCHAR(45) NULL ,
  PRIMARY KEY (`iddescuento`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`detalleFacturacion`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`detalleFacturacion` (
  `iddetalleFacturacion` INT NOT NULL AUTO_INCREMENT ,
  `fechaFacturacion` VARCHAR(45) NULL ,
  `avisoPago` VARCHAR(45) NULL ,
  `detalleCliente_iddetalleCliente` INT NOT NULL ,
  `detalleCliente_persona_RUT` VARCHAR(11) NOT NULL ,
  `planes_idplanes` INT NOT NULL ,
  `tipo` VARCHAR(45) NULL ,
  `descuento_iddescuento` INT NOT NULL ,
  PRIMARY KEY (`iddetalleFacturacion`, `detalleCliente_iddetalleCliente`, `detalleCliente_persona_RUT`, `planes_idplanes`) ,
  INDEX `fk_detalleFacturacion_detalleCliente1` (`detalleCliente_iddetalleCliente` ASC, `detalleCliente_persona_RUT` ASC) ,
  INDEX `fk_detalleFacturacion_planes1` (`planes_idplanes` ASC) ,
  INDEX `fk_detalleFacturacion_descuento1` (`descuento_iddescuento` ASC) ,
  CONSTRAINT `fk_detalleFacturacion_detalleCliente1`
    FOREIGN KEY (`detalleCliente_iddetalleCliente` , `detalleCliente_persona_RUT` )
    REFERENCES `gimnasio`.`detalleCliente` (`iddetalleCliente` , `usuario_RUT` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_detalleFacturacion_planes1`
    FOREIGN KEY (`planes_idplanes` )
    REFERENCES `gimnasio`.`planes` (`idplanes` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_detalleFacturacion_descuento1`
    FOREIGN KEY (`descuento_iddescuento` )
    REFERENCES `gimnasio`.`descuento` (`iddescuento` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`privilegio`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`privilegio` (
  `idprivilegio` INT NOT NULL AUTO_INCREMENT ,
  `nombre` VARCHAR(45) NULL ,
  `estado` VARCHAR(45) NULL ,
  `perfil_idperfil` INT NOT NULL ,
  PRIMARY KEY (`idprivilegio`, `perfil_idperfil`) ,
  INDEX `fk_privilegio_perfil1` (`perfil_idperfil` ASC) ,
  CONSTRAINT `fk_privilegio_perfil1`
    FOREIGN KEY (`perfil_idperfil` )
    REFERENCES `gimnasio`.`perfil` (`idperfil` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`configuracion`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`configuracion` (
  `idconfiguracion` INT NOT NULL AUTO_INCREMENT ,
  `nombre` VARCHAR(45) NULL ,
  `valor` VARCHAR(45) NULL ,
  PRIMARY KEY (`idconfiguracion`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`historial`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`historial` (
  `idhistorial` INT NOT NULL ,
  `detalle` VARCHAR(45) NULL ,
  `fecha` DATETIME NULL ,
  `persona_numCliente` INT(11) NOT NULL ,
  `persona_RUT` VARCHAR(11) NOT NULL ,
  `persona_perfil_idperfil` INT NOT NULL ,
  PRIMARY KEY (`idhistorial`, `persona_numCliente`, `persona_RUT`, `persona_perfil_idperfil`) ,
  INDEX `fk_historial_persona1` (`persona_numCliente` ASC, `persona_RUT` ASC, `persona_perfil_idperfil` ASC) ,
  CONSTRAINT `fk_historial_persona1`
    FOREIGN KEY (`persona_numCliente` , `persona_RUT` , `persona_perfil_idperfil` )
    REFERENCES `gimnasio`.`usuario` (`numCliente` , `RUT` , `perfil_idperfil` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`boleta`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`boleta` (
  `idboleta` INT NOT NULL AUTO_INCREMENT ,
  `fecha` VARCHAR(45) NULL ,
  `valor` VARCHAR(45) NULL ,
  PRIMARY KEY (`idboleta`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`cuota`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`cuota` (
  `idpago` INT NOT NULL AUTO_INCREMENT ,
  `detalleFacturacion_iddetalleFacturacion` INT NOT NULL ,
  `detalleFacturacion_detalleCliente_iddetalleCliente` INT NOT NULL ,
  `detalleFacturacion_detalleCliente_persona_RUT` VARCHAR(11) NOT NULL ,
  `detalleFacturacion_planes_idplanes` INT NOT NULL ,
  `fecha` VARCHAR(45) NULL ,
  `boleta_idboleta` INT NOT NULL ,
  PRIMARY KEY (`idpago`, `detalleFacturacion_iddetalleFacturacion`, `detalleFacturacion_detalleCliente_iddetalleCliente`, `detalleFacturacion_detalleCliente_persona_RUT`, `detalleFacturacion_planes_idplanes`, `boleta_idboleta`) ,
  INDEX `fk_pago_detalleFacturacion1` (`detalleFacturacion_iddetalleFacturacion` ASC, `detalleFacturacion_detalleCliente_iddetalleCliente` ASC, `detalleFacturacion_detalleCliente_persona_RUT` ASC, `detalleFacturacion_planes_idplanes` ASC) ,
  INDEX `fk_cuota_boleta1` (`boleta_idboleta` ASC) ,
  CONSTRAINT `fk_pago_detalleFacturacion1`
    FOREIGN KEY (`detalleFacturacion_iddetalleFacturacion` , `detalleFacturacion_detalleCliente_iddetalleCliente` , `detalleFacturacion_detalleCliente_persona_RUT` , `detalleFacturacion_planes_idplanes` )
    REFERENCES `gimnasio`.`detalleFacturacion` (`iddetalleFacturacion` , `detalleCliente_iddetalleCliente` , `detalleCliente_persona_RUT` , `planes_idplanes` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_cuota_boleta1`
    FOREIGN KEY (`boleta_idboleta` )
    REFERENCES `gimnasio`.`boleta` (`idboleta` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`producto`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`producto` (
  `idproducto` INT NOT NULL AUTO_INCREMENT ,
  `nombre` VARCHAR(45) NULL ,
  `detalle` VARCHAR(45) NULL ,
  `precio` VARCHAR(45) NULL ,
  `codigo` VARCHAR(45) NULL ,
  `cantidadStock` VARCHAR(45) NULL ,
  PRIMARY KEY (`idproducto`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`detalleBoleta`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`detalleBoleta` (
  `iddetalleBoleta` INT NOT NULL AUTO_INCREMENT ,
  `nombre` VARCHAR(45) NULL ,
  `valor` VARCHAR(45) NULL ,
  `boleta_idboleta` INT NOT NULL ,
  `producto_idproducto` INT NOT NULL ,
  PRIMARY KEY (`iddetalleBoleta`, `boleta_idboleta`) ,
  INDEX `fk_detalleBoleta_boleta1` (`boleta_idboleta` ASC) ,
  INDEX `fk_detalleBoleta_producto1` (`producto_idproducto` ASC) ,
  CONSTRAINT `fk_detalleBoleta_boleta1`
    FOREIGN KEY (`boleta_idboleta` )
    REFERENCES `gimnasio`.`boleta` (`idboleta` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_detalleBoleta_producto1`
    FOREIGN KEY (`producto_idproducto` )
    REFERENCES `gimnasio`.`producto` (`idproducto` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`caja`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`caja` (
  `idcaja` INT NOT NULL AUTO_INCREMENT ,
  `cantidad` VARCHAR(45) NULL ,
  `fecha` DATETIME NULL ,
  `tipo` VARCHAR(45) NULL ,
  `persona_numCliente` INT(11) NOT NULL ,
  `persona_RUT` VARCHAR(11) NOT NULL ,
  PRIMARY KEY (`idcaja`, `persona_numCliente`, `persona_RUT`) ,
  INDEX `fk_caja_persona1` (`persona_numCliente` ASC, `persona_RUT` ASC) ,
  CONSTRAINT `fk_caja_persona1`
    FOREIGN KEY (`persona_numCliente` , `persona_RUT` )
    REFERENCES `gimnasio`.`usuario` (`numCliente` , `RUT` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `gimnasio`.`producto_has_planes`
-- -----------------------------------------------------
CREATE  TABLE IF NOT EXISTS `gimnasio`.`producto_has_planes` (
  `producto_idproducto` INT NOT NULL AUTO_INCREMENT ,
  `planes_idplanes` INT NOT NULL ,
  PRIMARY KEY (`producto_idproducto`, `planes_idplanes`) ,
  INDEX `fk_producto_has_planes_planes1` (`planes_idplanes` ASC) ,
  CONSTRAINT `fk_producto_has_planes_producto1`
    FOREIGN KEY (`producto_idproducto` )
    REFERENCES `gimnasio`.`producto` (`idproducto` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_producto_has_planes_planes1`
    FOREIGN KEY (`planes_idplanes` )
    REFERENCES `gimnasio`.`planes` (`idplanes` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;



SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;