elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  DBDesigner y mysql 5 (No crea correctamente las FK)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: DBDesigner y mysql 5 (No crea correctamente las FK)  (Leído 8,858 veces)
Baaaw Oic

Desconectado Desconectado

Mensajes: 79


Ver Perfil
DBDesigner y mysql 5 (No crea correctamente las FK)
« en: 21 Marzo 2010, 14:29 pm »

El DBDesigner no crea bien las relaciones en servidores mysql 5 (++) .. alquien sabe de algun mod para que funcione como deberia o quizas otro software similar . ¿?

Gracias.


En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #1 en: 21 Marzo 2010, 16:23 pm »

Como es eso que no crea las relaciones bien? Que error te da para decir esto?  :P 


En línea

Baaaw Oic

Desconectado Desconectado

Mensajes: 79


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #2 en: 21 Marzo 2010, 16:52 pm »

Haber ...  tengo un modelo de una BD en BDDesigner 4 ... resulta que cuando genero el codigo en SQL y lo ejecuto en un servidor mysql 5 todo bien (el motor es InnoDB).

Con esta instruccion vemos cuales son los FK de las tablas.

Código
  1. SELECT K.REFERENCED_TABLE_NAME, K.COLUMN_NAME, K.REFERENCED_COLUMN_NAME FROM KEY_COLUMN_USAGE K WHERE K.TABLE_NAME='tabla' AND K.CONSTRAINT_NAME NOT IN('PRIMARY')

Pues resulta que el modelo esta con relaciones y todo eso .. y cuando ejecuto la consulta anterior no muestra nada de nada (aun habiendo relaciones en la tabla, esto lo probe en un servidor mysql superior a 4 (de 5 para arriba)).

Este es un script generado por DBDesigner 4:

Código
  1. CREATE TABLE IF NOT EXISTS `usuario` (
  2.  `codigo` INT(11) NOT NULL AUTO_INCREMENT,
  3.  `car_codigo` INT(11) NOT NULL,
  4.  `per_codigo` INT(11) NOT NULL,
  5.  `idusuario` VARCHAR(20) NOT NULL,
  6.  `fecreg` DATE NOT NULL,
  7.  `fecing` DATE DEFAULT NULL,
  8.  `estado` CHAR(1) NOT NULL DEFAULT '1',
  9.  PRIMARY KEY  (`codigo`),
  10.  KEY `usuario_FKIndex1` (`per_codigo`),
  11.  KEY `usuario_FKIndex2` (`car_codigo`)
  12. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Cuando ejecuto el script para saber las FK retorna un valor nulo, pero cuando creo la tabla de la siguiente forma (elaborada manualmente) :

Código
  1. CREATE TABLE IF NOT EXISTS `usuario` (
  2.  `codigo` INT(11) NOT NULL AUTO_INCREMENT,
  3.  `car_codigo` INT(11) NOT NULL,
  4.  `per_codigo` INT(11) NOT NULL,
  5.  `idusuario` VARCHAR(20) NOT NULL,
  6.  `fecreg` DATE NOT NULL,
  7.  `fecing` DATE DEFAULT NULL,
  8.  `estado` CHAR(1) NOT NULL DEFAULT '1',
  9.  PRIMARY KEY  (`codigo`),
  10.  FOREIGN KEY (car_codigo) REFERENCES cargo(codigo),
  11.  FOREIGN KEY (per_codigo) REFERENCES personal(codigo)
  12. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Aqui al ejecutar la consulta anterior si muestra los FK.

Gracias.
« Última modificación: 21 Marzo 2010, 16:58 pm por Baaaw Oic » En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #3 en: 21 Marzo 2010, 16:59 pm »

Disculpame, yo nunca utilizo Disenadores de DB siempre hago todo a mano pero.... esto:

Código
  1.  
  2. CREATE TABLE IF NOT EXISTS `usuario` (
  3.  `codigo` INT(11) NOT NULL AUTO_INCREMENT,
  4.  `car_codigo` INT(11) NOT NULL,
  5.  `per_codigo` INT(11) NOT NULL,
  6.  `idusuario` VARCHAR(20) NOT NULL,
  7.  `fecreg` DATE NOT NULL,
  8.  `fecing` DATE DEFAULT NULL,
  9.  `estado` CHAR(1) NOT NULL DEFAULT '1',
  10.  PRIMARY KEY  (`codigo`),
  11.  KEY `usuario_FKIndex1` (`per_codigo`),
  12.  KEY `usuario_FKIndex2` (`car_codigo`)
  13. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
  14.  
  15.  

Donde especifica ahi que habra una FOREIGN KEY a otra tabla???  :huh:  :huh:
Sere totalmente ignorante en este caso pero pensaria esto KEY `usuario_FKIndex1` (`per_codigo`),  como la indicacion de ello, aunque jamas he visto esa sintaxis pero en caso de que sea valida (porque aparentemente lo es te crea la tabla en el motor) puede darse el caso que dicha sintaxis aunque la continue soportando, en la version del motor donde la estas aplicando ya no aplique funcional como una vez a lo mejor si fue.  Haz intentado crear la tabla anterior de la misma forma (en sintaxis) pero manualmente dentro del motor, no con ninguna aplicacion, y ya hecho ver si funciona?

Disculpa mi ignorancia en esta parte, cuando nunca he visto algo es normal que reaccione de tal manera  ;)

En línea

Baaaw Oic

Desconectado Desconectado

Mensajes: 79


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #4 en: 21 Marzo 2010, 17:02 pm »

Pues es por eso que necesito otro modelador ... ese codigo es generado por el DBDesigner 4 ...
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #5 en: 21 Marzo 2010, 17:03 pm »

Pues porque no haz considerado WorkBench  ;)  esta en la web de MySQL en su web principal  :P
En línea

Baaaw Oic

Desconectado Desconectado

Mensajes: 79


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #6 en: 21 Marzo 2010, 17:05 pm »

Quiero instalarlo pero no puedo .. tengo problema con el yast y con el zypper .. >.< ''

:( :(
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #7 en: 21 Marzo 2010, 17:07 pm »

Auch verdad  :xD  :xD

Pero porque quieras hacerlo mediante yast, porque no te descargas el source code de WorkBench (disponible en la misma web de MySQL) y pos intentas compilarlo  ;)  tambien existe (pero no se si disena se que administra si) la aplicacion llamada Aqua, inclusive existe Toad para MySQL (Aunque no se si existe para Linux) y tambien disena, solo que es mas manual el asunto tu tienes que escribir todo  :xD
En línea

Baaaw Oic

Desconectado Desconectado

Mensajes: 79


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #8 en: 21 Marzo 2010, 17:14 pm »

El problema radica en que tambien pide algunas librerias .. ( cosa que tampoco las puedo instalar ) .. todo se hace un bucle infinito ...
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: DBDesigner y mysql 5 (No crea correctamente las FK)
« Respuesta #9 en: 21 Marzo 2010, 17:21 pm »

Uhhh que feo  :-X

Pues, que te puedo decir mi amigo, de recomendarte IDE se te pueden recomendar muchos asumo, el problema es... que con todos vas a pasar alguna calamidad ya que hay dependencias que cumplir en librerias. Y si tienes un sistema operativo trancado como lo tienes en tu caso, no es mucho lo que se puede avanzar, podria decirte que crees tus tablas a mano o uses un editor comun ya instalado en tu sistema. Porque mucho no se puede hacer.

Al menos que vayas considerando probar otros repositorios como te habia dicho en tu post de Linux.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines