Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > Mysql

Respuesta
 
Herramientas Desplegado
Antiguo 28-may-2007, 09:05   #1 (permalink)
Lord Kazuky tiene algunos puntos positivos de karma
 
Avatar de Lord Kazuky
 
Fecha de Ingreso: junio-2006
Ubicación: Colombia
Mensajes: 46
Pregunta Problemas al usar 2 Foreign Keys

Saludos!

Tengo algunos problemas al relacionar 3 Tablas en MySQL

Resulta que segun el Modelo Entidad-Relacion la tabla 'Pedido' hace referencia a una tabla de 'clientes' y otra de 'producto'. Al colocar la primera llave foranea a 'clientes' no hay problema pero al referenciar a 'producto' ya me saca error.

Los campos tienen la misma estructura, el mismo nombre, son indices. De hecho MySQL me deja hacer una relacion ya sea con la tabla de 'clientes' solamente, o con la de 'producto' solamente pero cuando coloco las 2 relaciones me saca:

"Error No. 1005"
"Can't create table '/directorio/#sql-2c14_1816.frm' (errno: 150) "


Estoy usando MySQL version "5.0.22-log"
Servidor: Linux Suse 10
Cliente: SQLyog 5.29 (Windows)
Todas las tablas son InnoDB.

Igual tambien lo probe de forma local con un MySQL windows en la ultima version y tampoco me funciona

Nose que puede ser, haber si alguno me puede ayudar , se le agradece :)

Muchas Gracias!
__________________
Saludos.
"Las Aguas más profundas son las más sileciosas..."
"Existen solo 10 tipos de personas en el mundo, los que entienden binario y los que no"
Lord Kazuky está desconectado   Responder Citando
Antiguo 28-may-2007, 11:31   #2 (permalink)
Vincent_Vallentine ha deshabilitado el karma
 
Fecha de Ingreso: diciembre-2005
Mensajes: 24
Re: Problemas al usar 2 Foreign Keys

Producto N----1 Pedido 1-----M Cliente

Imagino que es esto lo que quieres decir. En este caso te debería dejar hacer las 2 foraneas, las cuales son las dos juntas a la vez la clave principal... pero ten en cuenta que esto es mySQL, y por mucho que relaciones las tablas en la mayoría de sitios luego no te servirá de nada... Cada vez en la consulta tienes que hacer la relación (ej: select * from producto, pedido, cliente where producto.codigo = pedido.codigo and pedido.dni = cliente.dni), asi que no te preocupes demasiado que luego las relaciones las puedes poner tu como quieras ;)
Vincent_Vallentine está desconectado   Responder Citando
Antiguo 30-may-2007, 08:00   #3 (permalink)
Lord Kazuky tiene algunos puntos positivos de karma
 
Avatar de Lord Kazuky
 
Fecha de Ingreso: junio-2006
Ubicación: Colombia
Mensajes: 46
Re: Problemas al usar 2 Foreign Keys

Bueno, la preocupacion se debe a que debo subir una gran cantidad de datos que vienen de otra Base de datos, esto me toco hacerlo hace poco pero por la falta de Integridad se me "colgaron" ciertos registros erroneos (porque la otra BD no tiene buena integridad)

De todas formas pues la preocupacion es porque estas cosas se deberian hacer sin ningun problema. Aunque seguro debe ser alguna bobada, nose si a alguien mas le ha pasado, falta alguna opcion de configuracion del servidor, o alguna cosa que yo desconozca

Gracias !
__________________
Saludos.
"Las Aguas más profundas son las más sileciosas..."
"Existen solo 10 tipos de personas en el mundo, los que entienden binario y los que no"
Lord Kazuky está desconectado   Responder Citando
Antiguo 01-jun-2007, 20:33   #4 (permalink)
Lord Kazuky tiene algunos puntos positivos de karma
 
Avatar de Lord Kazuky
 
Fecha de Ingreso: junio-2006
Ubicación: Colombia
Mensajes: 46
Sonrisa Re: Problemas al usar 2 Foreign Keys

Ya encontre la solucion!!

Despues de haber probado en distintas herrmientas, MYSQL Front, el mismo Query Browser, y en todos pasaba exactamente lo mismo.

Entonces luego pase toda la estructura vacia a una nueva base de datos, para evitar problemas por datos inexistentes y cosas asi.

Pero el problema persistia.. entonces weno ya no me confie mas de las herramientas y guiado por el manual de Mysql, pues hice el SQL para generar la tabla con las dos llaves foraneas.

y weno funciono!

La diferencia con lo que estaba haciendo antes, es que antes creaba las tablas SIN RELACIONES y luego modificaba, supongo que la herramienta las hacia con ALTER TABLE .. pero pasaba lo que comente antes.

Entonces lo que hay que hacer es Crear las tablas incluyendo sus llaves foraneas y demas resticciones, en la misma sentencia del CREATE TABLE.

Ojala que esto le sirva a alguien mas..
__________________
Saludos.
"Las Aguas más profundas son las más sileciosas..."
"Existen solo 10 tipos de personas en el mundo, los que entienden binario y los que no"
Lord Kazuky está desconectado   Responder Citando
Respuesta
Calificación: Calificación de Tema: 2 votos, 3,00 de promedio.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 00:40.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93