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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  2 foreign keys (delete cascade) haciendo referencia a una misma tabla
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: 2 foreign keys (delete cascade) haciendo referencia a una misma tabla  (Leído 2,965 veces)
Littl3

Desconectado Desconectado

Mensajes: 239


Tarde o temprano aparece el hombre


Ver Perfil
2 foreign keys (delete cascade) haciendo referencia a una misma tabla
« en: 14 Septiembre 2011, 01:38 am »

Hola,

No soy un gran diseñador de bbdd pero me suelo defender con lo básico para mis consultas desde php... pero con esto me va a explotar la cabeza, os cuento:

Me invento 3 tablas.

users
field_users_value
fields

Quiero poder añadir campos dinamicos a un tipo de usuario determinado, a unos si a otros no, entonces añado a fields un registro que dice que los users de type = X tienen este campo añadido que tiene que rellenar, entonces cuando registro un usuario de type X se guarda un valor en field_users_value que tiene una foreign con fields y otra con users. Es decir que tanto si elimino el field padre, o el user padre, se elimine el field_user_value relacionado, pero me da un pete y debe ser porque la misma tabla tiene 2 claves foraneas con delete cascade.

1005 – Can’t create table ‘field_users_value’ (errno: 150)

Los campos tienen el mismo tipo (INT)..

¿Sabeis si esto se puede hacer?


En línea

fran800m

Desconectado Desconectado

Mensajes: 204



Ver Perfil
Re: 2 foreign keys (delete cascade) haciendo referencia a una misma tabla
« Respuesta #1 en: 16 Septiembre 2011, 04:57 am »

Uh igual es por la hora pero no me aclaro, por el error que pegas no llegas a crear la tabla field_users_value

Es como si tienes usuario y roles, ¿no? Lo que quieres es borrar el registro de los roles que tenia un usuario cuando éste es eliminado.

No veo dónde puedes tener el problema, si me das más detalle quizá te pueda ayudar, aunque no me molan ni triggers ni cascadas. Solo los "tolero" en casos muy limitados, controlados y documentados, porque como pases algo por alto se lían a saltar triggers y ya la hemos liado.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
(SQL) Diferencias entre tablas de una misma tabla? « 1 2 »
Bases de Datos
Karman 16 11,923 Último mensaje 26 Mayo 2009, 05:16 am
por Toxico
CREATE TABLE <name> LIKE <name> importando primary keys and foreign keys
Bases de Datos
Kasswed 2 4,408 Último mensaje 3 Febrero 2010, 16:32 pm
por ssccaann43 ©
2 join en una misma tabla a un mismo campo « 1 2 »
Bases de Datos
N4X 14 10,476 Último mensaje 27 Abril 2010, 20:04 pm
por ssccaann43 ©
no me borra la tabla haciendo delete on cascade tabla n:m
Bases de Datos
kinos 2 3,014 Último mensaje 31 Julio 2010, 13:05 pm
por kinos
Referencia a una tabla con javascript??
Desarrollo Web
ThePinkPanther 2 1,403 Último mensaje 29 Mayo 2013, 13:51 pm
por ThePinkPanther
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines