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

Borrar con cláusula Inner Join

Estas en el tema de Borrar con cláusula Inner Join en el foro de Bases de Datos General en Foros del Web. ¿Porqué no me funciona esta sentencia?: Delete From Articulos, Relaciones, Codificaciones (Articulos Inner Join Relaciones On (Articulos.IdArticulo=Relaciones.IdArticulo)) Inner Join Codificaciones On (Relaciones.IdCodificacion=Codificaciones.IdCodifi cacion) Where Articulos.IdArticulo=42 ...
  #1 (permalink)  
Antiguo 09/09/2005, 11:11
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
Borrar con cláusula Inner Join

¿Porqué no me funciona esta sentencia?:

Delete From Articulos, Relaciones, Codificaciones (Articulos Inner Join Relaciones On (Articulos.IdArticulo=Relaciones.IdArticulo)) Inner Join Codificaciones On (Relaciones.IdCodificacion=Codificaciones.IdCodifi cacion) Where Articulos.IdArticulo=42

¿No se puede eliminar con esta cláusula?, lo que intento hacer es eliminar registros entrelazados. Pero no tienen relaciones en la base de datos en si...

Es Access, muchas gracias a todos
  #2 (permalink)  
Antiguo 09/09/2005, 14:50
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
En SQL Server lo haces con algo como:

DELETE t1
FROM tabla1 t1
INNER JOIN tabla2 t2
ON t1.llave = t2.llave

No importa la cantidad de JOINS involucrados. Lo que nunca he intentado es borrar 2 (o mas) tablas a la vez, no sé si funcione... Pero siempre está la opcion de hacerlo en 2 (o mas) deletes consecutivos.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 12/09/2005, 10:09
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
¿Que significa el t1?
  #4 (permalink)  
Antiguo 12/09/2005, 10:42
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 4 meses
Puntos: 43
Hola Pempas!

t1 es el alias de tu tabla1, con el proposito de facilitar la lectura o para referirte a los campos de la tabla mucho mas fácilmente, lo puedes hacer como lo hizo Mithrandir:

Código:
DELETE t1
FROM tabla1 t1
INNER JOIN tabla2 t2
ON t1.llave = t2.llave
o así:

Código:
DELETE t1
FROM tabla1 AS t1
INNER JOIN tabla2 AS t2
ON t1.llave = t2.llave
Suerte!!!
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:19.