Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/05/2009, 12:39
Avatar de Cameron_2006
Cameron_2006
 
Fecha de Ingreso: diciembre-2006
Mensajes: 248
Antigüedad: 18 años, 4 meses
Puntos: 0
Eliminación de registros a los que hace referencia desde otra tabla

Buenas tardes, tengo otro problemita que seguro alguno de ustedes ha pasado por esto y quizá pueda ayudarme, el asunto es que necesito eliminar un registro de una table que hace referencia desde otra tabla, me explico, tengo 3 tablas (mencionaré solo los campos que interesan):

1) m_salas (están todas las salas de mensajes)
campos:
cod_sala (INT)
cod_proyecto (INT)
...

2) t_salasmensajes (están todos los mensajes relacionados con la sala):
cod_mensaje
cod_sala
...

3) m_galeriasalas (todas las imagenes que están relacionadas con los mensajes):
Campos:
cod_galeriasala
cod_mensaje

Ahora bien, ya borré los archivos físicos que estaban en la carpeta, ahora debo eliminar el registro en la base de datos, posteriormente los mensajes, y luego la sala, el código con el que tengo problemas es el de eliminar los registros de las imágenes que pertenecen a los mensajes, es este:

sql="delete from m_galeriasalas " &_
"where cod_mensaje in ( "&
"select b.cod_mensaje, c.cod_sala " &_
"from t_salasmensajes b, m_salas c " &_
"where b.cod_sala = c.cod_sala "&_
"c.cod_proyecto="& cod_proyecto&")"
conexion.execute SQL

Que sería para eliminar todos los registros (cod_mensajes) que están en la tabla m_galeríasalas y que pertenecen al cod_proyecto de la tabla m_salas.

Me da este error:
65|800a03ea|Error_de_sintaxis

La línea 65 es esta "where cod_mensaje in ( "&

Gracias por la ayuda (como siempre)