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

Borrar registros en dos tablas

Estas en el tema de Borrar registros en dos tablas en el foro de Bases de Datos General en Foros del Web. hola, si utilizo DELETE FROM tabla1, tabla2 where tabla1.id = TABLA2.otroid me borrara en total dos registros no? uno de la tabla 1 y otro ...
  #1 (permalink)  
Antiguo 31/05/2004, 07:51
Avatar de dieguicho  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires
Mensajes: 1.190
Antigüedad: 22 años, 5 meses
Puntos: 1
Sonrisa Borrar registros en dos tablas

hola, si utilizo

DELETE FROM tabla1, tabla2 where tabla1.id = TABLA2.otroid

me borrara en total dos registros no? uno de la tabla 1 y otro de la tabla 2
o necesito hacer dos selects por separado?

gracias y
__________________
On error no hago nada porque deje de fumar...
  #2 (permalink)  
Antiguo 31/05/2004, 11:48
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
No sería mejor relacionar las tablas y dar la opcion de borrar en cascada..??, porque la sintaxis no la veo correcta.

Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 31/05/2004, 12:24
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 21 años, 5 meses
Puntos: 1
Necesitas hacer los DELETE por separado
__________________
Ariel Avelar
  #4 (permalink)  
Antiguo 31/05/2004, 12:45
Avatar de dieguicho  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires
Mensajes: 1.190
Antigüedad: 22 años, 5 meses
Puntos: 1
aaahja... yo haog los recordsets con el dreamweaver.
puedo reutilizar un recordset o tengo que abrir uno nuevo
para borrar registros de varias tablas?

Código:
set rs1 = Server.CreateObject("ADODB.Recordset")
rs1.ActiveConnection = MM_pruebita_STRING
rs1.Source = "delete from tabla1 where id = 4"
rs1.CursorType = 0
rs1.CursorLocation = 2
rs1.LockType = 3
rs1.Open()
rs1_numRows = 0
__________________
On error no hago nada porque deje de fumar...
  #5 (permalink)  
Antiguo 31/05/2004, 12:49
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 21 años, 5 meses
Puntos: 1
De forma normal puedes reutilizarlo, de hecho en vez del recordset se usa el command, pero con el DreamWeaver no estoy seguro de que te permita usar el mismo objeto.
__________________
Ariel Avelar
  #6 (permalink)  
Antiguo 31/05/2004, 14:06
Avatar de dieguicho  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires
Mensajes: 1.190
Antigüedad: 22 años, 5 meses
Puntos: 1
podrias darme un ejemplo de como harias tu con command para borrar registros de dos tablas.
y cual es la diferencia entre command y recordset?
__________________
On error no hago nada porque deje de fumar...
  #7 (permalink)  
Antiguo 31/05/2004, 16:17
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 21 años, 5 meses
Puntos: 1
El Recordset se utiliza para almacenar en memoria los registros devueltos por una consulta que (obvio) regresa registros, es decir las SELECT.

El Command se utiliza para las consultas de acción: INSERT, DELETE, UPDATE.

Aquí está un ejemplo del empleo del Command:
Código:
<%
  
  Dim cSQL         'Cadena para consulta SQL
  Dim AdoCommand   'Objeto Command

  'Crear objeto. 
  Set AdoCommand = Server.CreateObject("ADODB.Command")
  
  cSQL = "DELETE FROM Tabla1 WHERE Id = 4 "
  
  'Insertar el registro.
  With AdoCommand
    .ActiveConnection = MM_pruebita_STRING 'Indicar la conección activa para el objeto ADODB.Command.
    .CommandTimeout = 600
    .CommandText = cSQL
    .Execute 'Aquí se borra el o los registros de Tabla1
  End With

  cSQL = "DELETE FROM Tabla2 WHERE OtroId = 4 "
  
  'Aquí se borra el o los registros de Tabla2
  AdoCommand.Execute
  
  'Descargar de memoria el objeto Command.
  Set AdoCommand = Nothing
%>
__________________
Ariel Avelar
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




La zona horaria es GMT -6. Ahora son las 02:03.