no veo ningun detalle a simple vista y el script lo genere atraves de workbench.....
de antemano gracias por la ayuda
Código:
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 `blog` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci ; -- ----------------------------------------------------- -- Table `blog`.`categoria` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`categoria` ( `id_categoria` INT NOT NULL AUTO_INCREMENT , `nombre` VARCHAR(45) NULL , `descripcion` VARCHAR(100) NULL , PRIMARY KEY (`id_categoria`) ) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`sub_categoria` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`sub_categoria` ( `id_sub_categoria` INT NOT NULL AUTO_INCREMENT , `nombre` VARCHAR(30) NOT NULL , `id_categoria` INT NOT NULL , PRIMARY KEY (`id_sub_categoria`) , INDEX `categoria- sub_catgoria` (`id_categoria` ASC) , CONSTRAINT `categoria- sub_catgoria` FOREIGN KEY (`id_categoria` ) REFERENCES `blog`.`categoria` (`id_categoria` ) ON DELETE RESTRICT ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`publicacion` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`publicacion` ( `id_publicacion` INT NOT NULL AUTO_INCREMENT , `titulo_publicacion` VARCHAR(100) NOT NULL , `texto_publicacion` TEXT NOT NULL , `fecha_publicacion` DATE NOT NULL , `id_sub_categoria` INT NOT NULL , PRIMARY KEY (`id_publicacion`) , INDEX `categoria-publicacion` (`id_sub_categoria` ASC) , CONSTRAINT `categoria-publicacion` FOREIGN KEY (`id_sub_categoria` ) REFERENCES `blog`.`sub_categoria` (`id_sub_categoria` ) ON DELETE RESTRICT ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`imagen` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`imagen` ( `id_imagen` INT NOT NULL AUTO_INCREMENT , `dir_archivo_p` VARCHAR(90) NOT NULL , `dir_imagen_g` VARCHAR(90) NOT NULL , `titulo_imagen` VARCHAR(70) NOT NULL , `id_publicacion` INT NOT NULL , PRIMARY KEY (`id_imagen`) , INDEX `imagen-publicacion` (`id_publicacion` ASC) , CONSTRAINT `imagen-publicacion` FOREIGN KEY (`id_publicacion` ) REFERENCES `blog`.`publicacion` (`id_publicacion` ) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`archivos_externos` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`archivos_externos` ( `id_archivos_externos` INT NOT NULL AUTO_INCREMENT , `dir_archivo` VARCHAR(150) NOT NULL , `titulo` VARCHAR(80) NOT NULL , `tipo` INT NOT NULL , `id_publicacion` INT NOT NULL , PRIMARY KEY (`id_archivos_externos`) , INDEX `archivo-publicacion` (`id_publicacion` ASC) , CONSTRAINT `archivo-publicacion` FOREIGN KEY (`id_publicacion` ) REFERENCES `blog`.`publicacion` (`id_publicacion` ) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`usuario` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`usuario` ( `id_usuario` INT NOT NULL AUTO_INCREMENT , `email` VARCHAR(70) NOT NULL , `clave` VARCHAR(45) NOT NULL , `nombre` VARCHAR(60) NULL , `fecha_nacimiento` VARCHAR(45) NULL , PRIMARY KEY (`id_usuario`) , UNIQUE INDEX `email_UNIQUE` (`email` ASC) ) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`comentario` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`comentario` ( `id_comentario` INT NOT NULL AUTO_INCREMENT , `texto_comentario` VARCHAR(255) NOT NULL , `fecha` DATE NOT NULL , `id_usuario` INT NOT NULL , `id_publicacion` INT NOT NULL , PRIMARY KEY (`id_comentario`) , INDEX `comentario-usuario` (`id_usuario` ASC) , INDEX `comentario-publicacion` (`id_publicacion` ASC) , CONSTRAINT `comentario-usuario` FOREIGN KEY (`id_usuario` ) REFERENCES `blog`.`usuario` (`id_usuario` ) ON DELETE SET NULL ON UPDATE CASCADE, CONSTRAINT `comentario-publicacion` FOREIGN KEY (`id_publicacion` ) REFERENCES `blog`.`publicacion` (`id_publicacion` ) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`favorito` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`favorito` ( `id_usuario` INT NOT NULL , `id_publicacion` INT NOT NULL , PRIMARY KEY (`id_usuario`, `id_publicacion`) , INDEX `usurio-favorito` (`id_usuario` ASC) , INDEX `favorito-publicacio` (`id_publicacion` ASC) , CONSTRAINT `usurio-favorito` FOREIGN KEY (`id_usuario` ) REFERENCES `blog`.`usuario` (`id_usuario` ) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `favorito-publicacio` FOREIGN KEY (`id_publicacion` ) REFERENCES `blog`.`publicacion` (`id_publicacion` ) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`historial` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`historial` ( `id_historial` INT NOT NULL AUTO_INCREMENT , `id_publicacion` INT NOT NULL , `id_usuario` INT NOT NULL , `fecha_visita` DATE NOT NULL , PRIMARY KEY (`id_historial`) , INDEX `historial-publicacion` (`id_publicacion` ASC) , INDEX `historial-usuario` (`id_usuario` ASC) , CONSTRAINT `historial-publicacion` FOREIGN KEY (`id_publicacion` ) REFERENCES `blog`.`publicacion` (`id_publicacion` ) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `historial-usuario` FOREIGN KEY (`id_usuario` ) REFERENCES `blog`.`usuario` (`id_usuario` ) ON DELETE SET NULL ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `blog`.`valoracion` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `blog`.`valoracion` ( `id_usuario` INT NOT NULL , `id_publicacion` INT NOT NULL , `valor_publicacion` INT NOT NULL , PRIMARY KEY (`id_usuario`, `id_publicacion`) , INDEX `usuario-valoracion` (`id_usuario` ASC) , INDEX `valoracion-publicacion` (`id_publicacion` ASC) , CONSTRAINT `usuario-valoracion` FOREIGN KEY (`id_usuario` ) REFERENCES `blog`.`usuario` (`id_usuario` ) ON DELETE SET NULL ON UPDATE CASCADE, CONSTRAINT `valoracion-publicacion` FOREIGN KEY (`id_publicacion` ) REFERENCES `blog`.`publicacion` (`id_publicacion` ) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB; SET SQL_MODE=@OLD_SQL_MODE; SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;