Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

error al importar db mysql

Estas en el tema de error al importar db mysql en el foro de Mysql en Foros del Web. hola gente como estan? a ver si me pueden dar una mano con esto. Exporte una base de datos con un script php.. todo bien ...
  #1 (permalink)  
Antiguo 01/08/2012, 09:56
 
Fecha de Ingreso: julio-2011
Mensajes: 123
Antigüedad: 12 años, 9 meses
Puntos: 0
error al importar db mysql

hola gente como estan?
a ver si me pueden dar una mano con esto.
Exporte una base de datos con un script php.. todo bien hasta ahi(al pie del mansaje pongo todo el script completo que genero la exportacion)

al importar la db desde el phpmyadmin retrna este error:

Error

consulta SQL:

CREATE TABLE `comentarios` (
`id_coment` int( 10 ) unsigned NOT NULL AUTO_INCREMENT ,
`id_user` int( 10 ) unsigned NOT NULL ,
`comento` text COLLATE utf8_spanish_ci NOT NULL ,
PRIMARY KEY ( `id_coment` ) ,
KEY `id_user` ( `id_user` ) ,
CONSTRAINT `comentarios_ibfk_1` FOREIGN KEY ( `id_user` ) REFERENCES `usuarios` ( `id` ) ON DELETE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT =4 DEFAULT CHARSET = utf8 COLLATE = utf8_spanish_ci;

MySQL ha dicho: Documentación
#1005 - Can't create table 'prueba.comentarios' (errno: 150) (<a href="server_engines.php?engine=InnoDB&amp;page=St atus&amp;token=46c6e0fd2a8fe50f00335569e30f59a6">D etalles...</a>)



por que puede ser gente? la db esta funcionando bien y es de prueba nada mas tengo dos tablas en ella.

este es todo el script que crea la exportacion de la base desde php, esto es lo que importo:


-- Dump de la Base de Datos
-- Fecha: miércoles 01 agosto 2012 - 17:24:14
--
-- Version: Str_VERS, del Str_DATE, [email protected]
-- Soporte y Updaters: http://insidephp.sytes.net
--
-- Host: `127.0.0.1` Database: `integridad`
-- ------------------------------------------------------
-- Server version 5.5.8

--
-- Table structure for table `comentarios`
--

DROP TABLE IF EXISTS comentarios;
CREATE TABLE `comentarios` (
`id_coment` int(10) unsigned NOT NULL AUTO_INCREMENT,
`id_user` int(10) unsigned NOT NULL,
`comento` text COLLATE utf8_spanish_ci NOT NULL,
PRIMARY KEY (`id_coment`),
KEY `id_user` (`id_user`),
CONSTRAINT `comentarios_ibfk_1` FOREIGN KEY (`id_user`) REFERENCES `usuarios` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

--
-- Dumping data for table `comentarios`
--

LOCK TABLES comentarios WRITE;
INSERT INTO comentarios VALUES('3', '4', 'mas');
UNLOCK TABLES;


--
-- Table structure for table `usuarios`
--

DROP TABLE IF EXISTS usuarios;
CREATE TABLE `usuarios` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`nombre` varchar(100) COLLATE utf8_spanish_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

--
-- Dumping data for table `usuarios`
--

LOCK TABLES usuarios WRITE;
INSERT INTO usuarios VALUES('4', 'juan');
UNLOCK TABLES;



-- Dump de la Base de Datos Completo.
  #2 (permalink)  
Antiguo 01/08/2012, 10:17
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: error al importar db mysql

Hola cesand209:

Las sentencias no tienen ningún error, el único cuidado que debes tener es el orden en que estás ejecutando las sentencias. La tabla COMENTARIOS tiene declarada una llave foránea hacia la tabla USUARIOS, por lo tanto esta debe de existir y antes de que intentes crear la tabla de COMENTARIOS. De igual manera, para poder insertar los datos en la tabla de comentarios, DEBEN EXISTIR LAS LLAVES FORÁNEAS EN LA TABLA DE USUARIOS...

tal como lo pones, el script lo deberías ejecutar en el siguiente orden:

Código MySQL:
Ver original
  1. DROP TABLE IF EXISTS usuarios;
  2. CREATE TABLE `usuarios` (
  3. `nombre` VARCHAR(100) COLLATE utf8_spanish_ci DEFAULT NULL,
  4. PRIMARY KEY (`id`),
  5. KEY `id` (`id`)
  6.  
  7. LOCK TABLES usuarios WRITE;
  8. INSERT INTO usuarios VALUES('4', 'juan');
  9. UNLOCK TABLES;
  10.  
  11. DROP TABLE IF EXISTS comentarios;
  12. CREATE TABLE `comentarios` (
  13. `id_user` INT(10) UNSIGNED NOT NULL,
  14. `comento` TEXT COLLATE utf8_spanish_ci NOT NULL,
  15. PRIMARY KEY (`id_coment`),
  16. KEY `id_user` (`id_user`),
  17. CONSTRAINT `comentarios_ibfk_1` FOREIGN KEY (`id_user`) REFERENCES `usuarios` (`id`) ON DELETE CASCADE
  18.  
  19. LOCK TABLES comentarios WRITE;
  20. INSERT INTO comentarios VALUES('3', '4', 'mas');
  21. UNLOCK TABLES;

Saludos
Leo.
  #3 (permalink)  
Antiguo 03/08/2012, 06:28
 
Fecha de Ingreso: julio-2011
Mensajes: 123
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: error al importar db mysql

Vos lo dijiste leo... mil gracias por tu ayuda es logico completamente que pase esto entonces, te agradezco la explicacion!!!

me funciono perfecto como dijiste

Etiquetas: php, sql, tabla
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 01:10.