Foros del Web » Administración de Sistemas » LAMP »

Error 1022: Can't write; duplicate key al hacer Forward Engineering MySQL WorkBench

Estas en el tema de Error 1022: Can't write; duplicate key al hacer Forward Engineering MySQL WorkBench en el foro de LAMP en Foros del Web. Hola al hacer, Forward Engineering me devuelve este error, el cual no entiendo porque en la tabla tbl_producto solo tengo una llave @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 21/05/2015, 11:45
 
Fecha de Ingreso: febrero-2014
Mensajes: 69
Antigüedad: 10 años, 1 mes
Puntos: 0
Error 1022: Can't write; duplicate key al hacer Forward Engineering MySQL WorkBench

Hola al hacer, Forward Engineering me devuelve este error, el cual no entiendo porque en la tabla tbl_producto solo tengo una llave

Código MySQL:
Ver original
  1. Executing SQL script in server
  2. ERROR: Error 1022: Can't write; duplicate key in table 'tbl_producto'
  3. SQL Code:
  4.        -- -----------------------------------------------------
  5.        -- Table `mydb`.`tbl_producto`
  6.        -- -----------------------------------------------------
  7.        CREATE TABLE IF NOT EXISTS `mydb`.`tbl_producto` (
  8.          `id_producto` INT NOT NULL AUTO_INCREMENT,
  9.          `id_laboratorio` INT NOT NULL,
  10.          `nombre_producto` VARCHAR(30) NOT NULL,
  11.          `numero_registro` VARCHAR(45) NOT NULL,
  12.          `fecha_renovacion` VARCHAR(45) NOT NULL,
  13.          PRIMARY KEY (`id_producto`),
  14.          INDEX `id_laboratorio_idx` (`id_laboratorio` ASC),
  15.          CONSTRAINT `id_laboratorio`
  16.            FOREIGN KEY (`id_laboratorio`)
  17.            REFERENCES `mydb`.`tbl_laboratorio` (`id_laboratorio`)
  18.            ON DELETE NO ACTION
  19.            ON UPDATE NO ACTION)
  20.        ENGINE = InnoDB
  21.  
  22. SQL script execution finished: statements: 10 succeeded, 1 failed
  23.  
  24. Fetching back view definitions in final form.
  25. Nothing to fetch


Este es mi script

Código MySQL:
Ver original
  1. -- MySQL Workbench Forward Engineering
  2.  
  3. SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
  4. SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
  5. SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
  6.  
  7. -- -----------------------------------------------------
  8. -- Schema mydb
  9. -- -----------------------------------------------------
  10.  
  11. -- -----------------------------------------------------
  12. -- Schema mydb
  13. -- -----------------------------------------------------
  14. CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ;
  15. USE `mydb` ;
  16.  
  17. -- -----------------------------------------------------
  18. -- Table `mydb`.`tbl_estado`
  19. -- -----------------------------------------------------
  20. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_estado` (
  21.   `id_estado` INT NOT NULL AUTO_INCREMENT,
  22.   `nombre_estado` VARCHAR(20) NOT NULL,
  23.   `descripcion` VARCHAR(45) NULL,
  24.   PRIMARY KEY (`id_estado`))
  25.  
  26.  
  27. -- -----------------------------------------------------
  28. -- Table `mydb`.`tbl_laboratorio`
  29. -- -----------------------------------------------------
  30. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_laboratorio` (
  31.   `id_laboratorio` INT NOT NULL AUTO_INCREMENT,
  32.   `nombre_laboratorio` VARCHAR(45) NOT NULL,
  33.   `telefono_1` CHAR(15) NULL,
  34.   `telefono_2` CHAR(15) NULL,
  35.   `telefono_3` CHAR(15) NULL,
  36.   `descripcion` VARCHAR(45) NULL,
  37.   `direccion` VARCHAR(45) NOT NULL,
  38.   PRIMARY KEY (`id_laboratorio`, `direccion`),
  39.   UNIQUE INDEX `nombre_laboratorio_UNIQUE` (`nombre_laboratorio` ASC))
  40.  
  41.  
  42. -- -----------------------------------------------------
  43. -- Table `mydb`.`tbl_registro`
  44. -- -----------------------------------------------------
  45. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_registro` (
  46.   `id_registro` INT NOT NULL AUTO_INCREMENT,
  47.   `id_laboratorio` INT NOT NULL,
  48.   `nombre_producto` INT NOT NULL,
  49.   `numero_pdf` VARCHAR(45) NOT NULL,
  50.   `numero_registro` VARCHAR(45) NULL,
  51.   `fecha_renovacion` DATE NOT NULL,
  52.   `observacion` TEXT(5000) NULL,
  53.   `fecha_envio_escaneo` DATE NOT NULL,
  54.   `numero_resolucion` VARCHAR(45) NOT NULL,
  55.   `id_estado` INT NOT NULL,
  56.   PRIMARY KEY (`id_registro`),
  57.   UNIQUE INDEX `numero_registro_UNIQUE` (`numero_registro` ASC),
  58.   UNIQUE INDEX `numero_resolucion_UNIQUE` (`numero_resolucion` ASC),
  59.   INDEX `id_laboratorio_idx` (`id_laboratorio` ASC),
  60.   INDEX `id_estado_idx` (`id_estado` ASC),
  61.   CONSTRAINT `id_laboratorio`
  62.     FOREIGN KEY (`id_laboratorio`)
  63.     REFERENCES `mydb`.`tbl_laboratorio` (`id_laboratorio`)
  64.   CONSTRAINT `id_estado`
  65.     FOREIGN KEY (`id_estado`)
  66.     REFERENCES `mydb`.`tbl_estado` (`id_estado`)
  67.  
  68.  
  69. -- -----------------------------------------------------
  70. -- Table `mydb`.`id_roles`
  71. -- -----------------------------------------------------
  72. CREATE TABLE IF NOT EXISTS `mydb`.`id_roles` (
  73.   `id_rol` INT NOT NULL AUTO_INCREMENT,
  74.   `nombre_rol` VARCHAR(20) NOT NULL,
  75.   `descripcion` VARCHAR(45) NULL,
  76.   PRIMARY KEY (`id_rol`))
  77.  
  78.  
  79. -- -----------------------------------------------------
  80. -- Table `mydb`.`tbl_usuarios`
  81. -- -----------------------------------------------------
  82. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_usuarios` (
  83.   `id_usuario` INT NOT NULL AUTO_INCREMENT,
  84.   `nombre_usuario` VARCHAR(45) NOT NULL,
  85.   `contrasena` VARCHAR(45) NOT NULL,
  86.   `id_rol` INT NOT NULL,
  87.   PRIMARY KEY (`id_usuario`),
  88.   INDEX `id_rol_idx` (`id_rol` ASC),
  89.   CONSTRAINT `id_rol`
  90.     FOREIGN KEY (`id_rol`)
  91.     REFERENCES `mydb`.`id_roles` (`id_rol`)
  92.  
  93.  
  94. -- -----------------------------------------------------
  95. -- Table `mydb`.`tbl_producto`
  96. -- -----------------------------------------------------
  97. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_producto` (
  98.   `id_producto` INT NOT NULL AUTO_INCREMENT,
  99.   `id_laboratorio` INT NOT NULL,
  100.   `nombre_producto` VARCHAR(30) NOT NULL,
  101.   `numero_registro` VARCHAR(45) NULL,
  102.   `fecha_renovacion` VARCHAR(45) NULL,
  103.   PRIMARY KEY (`id_producto`),
  104.   INDEX `id_laboratorio_idx` (`id_laboratorio` ASC),
  105.   CONSTRAINT `id_laboratorio`
  106.     FOREIGN KEY (`id_laboratorio`)
  107.     REFERENCES `mydb`.`tbl_laboratorio` (`id_laboratorio`)
  108.  
  109.  
  110. -- -----------------------------------------------------
  111. -- Table `mydb`.`tbl_tramite`
  112. -- -----------------------------------------------------
  113. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_tramite` (
  114.   `id_tramite` INT NOT NULL AUTO_INCREMENT,
  115.   `nombre_tramite` VARCHAR(45) NOT NULL,
  116.   `decripcion` VARCHAR(45) NULL,
  117.   PRIMARY KEY (`id_tramite`))
  118.  
  119.  
  120. -- -----------------------------------------------------
  121. -- Table `mydb`.`tbl_actualizacion`
  122. -- -----------------------------------------------------
  123. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_actualizacion` (
  124.   `id_actualizacion` INT NOT NULL AUTO_INCREMENT,
  125.   `id_producto` INT NOT NULL,
  126.   `numero_registo` VARCHAR(45) NOT NULL,
  127.   `id_tramite` INT NOT NULL,
  128.   `estimado_de_finalizacion` VARCHAR(45) NOT NULL,
  129.   `fecha_envio_escaneado` DATE NULL,
  130.   `numero_formulario` VARCHAR(45) NOT NULL,
  131.   `id_estado` INT NOT NULL,
  132.   PRIMARY KEY (`id_actualizacion`),
  133.   INDEX `id_producto_idx` (`id_producto` ASC),
  134.   INDEX `id_tramite_idx` (`id_tramite` ASC),
  135.   INDEX `id_estado_idx` (`id_estado` ASC),
  136.   CONSTRAINT `id_producto`
  137.     FOREIGN KEY (`id_producto`)
  138.     REFERENCES `mydb`.`tbl_producto` (`id_producto`)
  139.   CONSTRAINT `id_tramite`
  140.     FOREIGN KEY (`id_tramite`)
  141.     REFERENCES `mydb`.`tbl_tramite` (`id_tramite`)
  142.   CONSTRAINT `id_estado`
  143.     FOREIGN KEY (`id_estado`)
  144.     REFERENCES `mydb`.`tbl_estado` (`id_estado`)
  145.  
  146.  
  147. -- -----------------------------------------------------
  148. -- Table `mydb`.`tbl_renovacion`
  149. -- -----------------------------------------------------
  150. CREATE TABLE IF NOT EXISTS `mydb`.`tbl_renovacion` (
  151.   `id_renovacion` INT NOT NULL AUTO_INCREMENT,
  152.   `id_producto` INT NOT NULL,
  153.   `numero_registro` VARCHAR(45) NOT NULL,
  154.   `observacion` VARCHAR(45) NULL,
  155.   `fecha_envio_escaneado` VARCHAR(45) NULL,
  156.   `numero_formulario` VARCHAR(45) NOT NULL,
  157.   `id_estado` INT NOT NULL,
  158.   PRIMARY KEY (`id_renovacion`),
  159.   INDEX `id_producto_idx` (`id_producto` ASC),
  160.   INDEX `id_estado_idx` (`id_estado` ASC),
  161.   CONSTRAINT `id_producto`
  162.     FOREIGN KEY (`id_producto`)
  163.     REFERENCES `mydb`.`tbl_producto` (`id_producto`)
  164.   CONSTRAINT `id_estado`
  165.     FOREIGN KEY (`id_estado`)
  166.     REFERENCES `mydb`.`tbl_estado` (`id_estado`)
  167.  
  168.  
  169. SET SQL_MODE=@OLD_SQL_MODE;
  170. SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
  171. SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

Etiquetas: duplicate, forward, key, mysql, workbench, write
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:32.