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

Comprobar si una consulta-borrado-modificación se realiza bien

Estas en el tema de Comprobar si una consulta-borrado-modificación se realiza bien en el foro de Mysql en Foros del Web. Muy buenas. Tengo una duda. Sé que en innoDB se puede hacer, es decir, "comprobar" que si una serie de sucesos se realizan corréctamente si ...
  #1 (permalink)  
Antiguo 10/04/2012, 03:33
Avatar de Jask  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 773
Antigüedad: 18 años
Puntos: 15
Comprobar si una consulta-borrado-modificación se realiza bien

Muy buenas.

Tengo una duda. Sé que en innoDB se puede hacer, es decir, "comprobar" que si una serie de sucesos se realizan corréctamente si no no se realiza ninguno, pero no sé si en MyISAM no sé si se puede realizar. Me explico.

Quiero borrar una serie de campos cuando se borra una categoría (estos campos, obviamente, están asociados a esta categoría) pero me gustaría comprobar, aunque sea mostrando la sentencia SQL que se va a utilizar, o que el gestor diga como un "OK, si lo haces se borrará " (por poner un ejemplo), si se va a realizar bien y a que campos afecta.

Hay alguna forma? De momento yo lo que hago es imprimir la sentencia de la query (sin pasarla por mysql_query) pero claro, es un coñazo, no sé si habrá una función o una forma más fácil.

Gracias
__________________
Os iusti meditabitur sapientiam
Si te he ayudado, por qué no un poquito de Karma :) ?
  #2 (permalink)  
Antiguo 10/04/2012, 05:25
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Comprobar si una consulta-borrado-modificación se realiza bien

MyISAM no tiene control de transacciones.

Lo unico que se me ocurre es que hagas uno o varios SELECT con las mismas restriciones y muestres los resultados, para que se vea cuantos registros se van a borrar o modificar... de que categorias etc....

Eso si no puedes pasarte a innoDB y usar la integridad referencial y las transacciones....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 10/04/2012, 05:50
Avatar de zalito12  
Fecha de Ingreso: noviembre-2011
Ubicación: Coruña, España
Mensajes: 430
Antigüedad: 12 años, 5 meses
Puntos: 67
Respuesta: Comprobar si una consulta-borrado-modificación se realiza bien

No sé si te valdrá pero yo a veces uso esta estructura:
Código PHP:
$del_categoria mysql_query("DELETE FROM t_categoria WHERE id = '".$id."'");
if(
$del_categoria$del_seccion mysql_query("DELETE FROM t_seccion WHERE categoria = '".$id."'"); 
Obviamente las variables y los nombres son todos de ejemplo, es muy simple pero por lo menos haces un control, pequeñito sí :)
  #4 (permalink)  
Antiguo 10/04/2012, 07:08
Avatar de Jask  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 773
Antigüedad: 18 años
Puntos: 15
Respuesta: Comprobar si una consulta-borrado-modificación se realiza bien

Cita:
Iniciado por quimfv Ver Mensaje
MyISAM no tiene control de transacciones.

Lo unico que se me ocurre es que hagas uno o varios SELECT con las mismas restriciones y muestres los resultados, para que se vea cuantos registros se van a borrar o modificar... de que categorias etc....

Eso si no puedes pasarte a innoDB y usar la integridad referencial y las transacciones....
Si, eso lo conocía pero bueno. Estoy desarrollando un plugin de Wordpress no sabría si se pueden cambiar varias tablas a InnoDB o es la base de datos en general. Aún así símplemente era curiosidad más que nada, porque lo he podido solventar aunque de una forma más rudimentaria, como comenta zalito12

Cita:
Iniciado por zalito12 Ver Mensaje
No sé si te valdrá pero yo a veces uso esta estructura:
Código PHP:
$del_categoria mysql_query("DELETE FROM t_categoria WHERE id = '".$id."'");
if(
$del_categoria$del_seccion mysql_query("DELETE FROM t_seccion WHERE categoria = '".$id."'"); 
Obviamente las variables y los nombres son todos de ejemplo, es muy simple pero por lo menos haces un control, pequeñito sí :)
Antes de leer tu contestación lo había hecho así jeje pero bueno muchas gracias de todas formas :)

Un saludo y gracias
__________________
Os iusti meditabitur sapientiam
Si te he ayudado, por qué no un poquito de Karma :) ?

Etiquetas: Ninguno
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 12:33.