Foros del Web » Programando para Internet » PHP »

Delete

Estas en el tema de Delete en el foro de PHP en Foros del Web. Hola: Otraves molestandolos no se si puedan ayudarme necesito una sentencia para delete donde pueda no eliminar los datos si es que tengo registros en ...
  #1 (permalink)  
Antiguo 15/11/2004, 15:55
Avatar de christopher1979  
Fecha de Ingreso: octubre-2004
Mensajes: 203
Antigüedad: 19 años, 6 meses
Puntos: 0
Exclamación Delete

Hola:

Otraves molestandolos no se si puedan ayudarme necesito una sentencia para delete donde pueda no eliminar los datos si es que tengo registros en otra tabla les pongo un ejemplo

estos son los datos a borrar lo que quiero es que no los borre si tiene otros registros que esten ligados con estos datos. me pueden ayudar se los agradeceria.

$connection = mysql_connect("localhost","administrador","adminis trador");

mysql_select_db("destajos",$connection);


mysql_query("DELETE FROM frentes where clavefrente = '$clavefrente1' and nombrefrente = '$nombrefrente1'and ubicacion = '$ubicacion1' and calle = '$calle1' and numero = '$numero1' and colonia = '$colonia1' and cp = '$cp1'and ciudad = '$ciudad1' and estado = '$estado1' and telefono = '$telefono1' and residente = '$residente1'",$connection);


de antemano muchas gracias por leer mi mensaje.

  #2 (permalink)  
Antiguo 15/11/2004, 16:08
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
La sentencia no esta bien, si es que esto en realidad lo tienes junto y no se ve aqui solamente de esa manera:

'$nombrefrente1'and ubicacion = '$ubicacion1'

notas que '$nombrefrente1' y and estan juntos en lugar de separados.
  #3 (permalink)  
Antiguo 15/11/2004, 16:12
Avatar de christopher1979  
Fecha de Ingreso: octubre-2004
Mensajes: 203
Antigüedad: 19 años, 6 meses
Puntos: 0
Exclamación gracias

ya funciona pero lo que necesito es saber como le ago para que no se borre si es que tiene histrorial estos datos te digo clavefrente es la llave que abre otras tablas y si tiene en otras tablas datos no quiero que lo borre y que me salga un mensaje de que todavia tiene otros registros si me entiendes
  #4 (permalink)  
Antiguo 15/11/2004, 16:20
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Haz unos select sobre las otras tablas antes de borrar, si esos select no te devuelven datos entonces borras, esa es como la forma mas basica.
Si tu mysql te permite (mysql 4.1 para arriba) podrias tratar de hacerlo con subconsultas, ejemplo:

delete from tabla
where clavefrente not in (select clavefrente from otra_tabla1)
and clavefrente not in (select clavefrente from otra_tabla2)
  #5 (permalink)  
Antiguo 15/11/2004, 18:21
Avatar de christopher1979  
Fecha de Ingreso: octubre-2004
Mensajes: 203
Antigüedad: 19 años, 6 meses
Puntos: 0
Exclamación Alguna Otra Forma

Gracias Pero No Abra Otra Forma Se Los Agradeceria me hace falta para terminar mi consulta no sean malos

Última edición por christopher1979; 16/11/2004 a las 09:37
  #6 (permalink)  
Antiguo 16/11/2004, 09:38
Avatar de christopher1979  
Fecha de Ingreso: octubre-2004
Mensajes: 203
Antigüedad: 19 años, 6 meses
Puntos: 0
Exclamación gracas

me pueden ayudar de antemano se los agradesco
  #7 (permalink)  
Antiguo 16/11/2004, 13:25
Avatar de christopher1979  
Fecha de Ingreso: octubre-2004
Mensajes: 203
Antigüedad: 19 años, 6 meses
Puntos: 0
<?php

$clavefrente1 = $_POST['clavefrente'];

$nombrefrente1 = $_POST['nombrefrente'];

$ubicacion1 = $_POST['ubicacion'];

$calle1 = $_POST['calle'];

$numero1 = $_POST['numero'];

$colonia1 = $_POST['colonia'];

$cp1 = $_POST['cp'];

$ciudad1 = $_POST['ciudad'];

$estado1 = $_POST['estado'];

$telefono1 = $_POST['telefono'];

$residente1 = $_POST['residente'];

$connection = mysql_connect("localhost","administrador","adminis trador");

mysql_select_db("destajos",$connection);


mysql_query("DELETE FROM frentes where clavefrente = '$clavefrente1' and nombrefrente = '$nombrefrente1'and ubicacion = '$ubicacion1' and calle = '$calle1' and numero = '$numero1' and colonia = '$colonia1' and cp = '$cp1'
and ciudad = '$ciudad1' and estado = '$estado1' and telefono = '$telefono1' and residente = '$residente1'",$connection);



echo "<form name=\"retorno\" action=\"modelifrente1.php\">

BORRADO EL REGISTRO

<script type=\"text/javascript\">

document.retorno.submit()

</script>

</form>";


?>


este es el codigo que borra pero como le ago para que no lo borre si tengo registros en otras tablas la llave en todas es clavefrente
  #8 (permalink)  
Antiguo 16/11/2004, 16:51
Avatar de ignacio_giri  
Fecha de Ingreso: febrero-2003
Ubicación: Argentina, Rosario
Mensajes: 585
Antigüedad: 21 años, 2 meses
Puntos: 0
christopher1979, sos el christopher que yo conozco?
__________________
Ignacio
  #9 (permalink)  
Antiguo 17/11/2004, 06:14
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por ignacio_giri
christopher1979, sos el christopher que yo conozco?
En privado (por mensajería privada de este foro) pueden contactarse si lo desean .. Por favor, usen los "MP" para tal fin.

Un saludo,
  #10 (permalink)  
Antiguo 18/11/2004, 10:54
Avatar de christopher1979  
Fecha de Ingreso: octubre-2004
Mensajes: 203
Antigüedad: 19 años, 6 meses
Puntos: 0
Exclamación hola me pueden ayudar con este problemita DELETE

se los agradeceria mucho
  #11 (permalink)  
Antiguo 18/11/2004, 11:26
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 19 años, 6 meses
Puntos: 7
Si tu versión de mysql es la 4.0 o superior puedes probar con lo siguiente:

mysql_query("DELETE FROM frentes USING segundabasededatos WHERE frentes.clavefrente = '$clavefrente1' AND frentes.nombrefrente = '$nombrefrente1' AND frentes.ubicacion = '$ubicacion1' AND frentes.calle = '$calle1' AND frentes.numero = '$numero1' AND frentes.colonia = '$colonia1' AND frentes.cp = '$cp1'
and frentes.ciudad = '$ciudad1' AND frentes.estado = '$estado1' AND frentes.telefono = '$telefono1' AND frentes.residente = '$residente1' AND frentes.clavefrente <> segundabasededatos.clavefrente)",$connection);
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 04:58.