Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/03/2012, 19:09
Silver
 
Fecha de Ingreso: noviembre-2001
Ubicación: México DF
Mensajes: 128
Antigüedad: 22 años, 5 meses
Puntos: 0
Una query para eliminar multiples tablas...

Hola amigos,

Tengo las siguientes tres tablas:
Código:
"maps"
id map, smallint(5)
map, varchar(50)

"layers"
idlayer, smallint(5)
layer, varchar(50)

"maps_layers"
idmap_layer, smallint(5)
mapid, smallint(5)
layerid, smallint(5)
La relación entre "maps" y "layers" es "muchos a muchos" a través de la tabla "maps_layers", pero se puede dar el caso de que un map no tenga layers y por lo tanto no exista relación entre ellos.

Necesito una query que elimine contenidos en las tablas "maps" y "maps_layers" dependiendo de un $mapid que yo le pase.

El siguiente ejemplo funciona si el map está conectado con alguna layer, pero no funciona si el map no está conectado con la tabla layers.

Código:
DELETE FROM `maps`, `maps_layers` 
USING `maps`, `maps_layers` 
WHERE `maps`.idmap = 4 AND `maps_layers`.mapid = 4;
¿Alguna sugerencia?
Saludos,
Silver
__________________
Nuedi Servicios SA de CV
http://www.nuedi.mx