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

Saber si se actualizó o se hizo un insert

Estas en el tema de Saber si se actualizó o se hizo un insert en el foro de Mysql en Foros del Web. Hola gente, necesito ayuda con una consulta de este tipo. Código PHP: UPDATE TABLA SET Campo1  = @ Valor WHERE ID  = @ ID IF @@ ROWCOUNT  =  0 INSERT INTO TABLA  ( Campo1 , ...
  #1 (permalink)  
Antiguo 25/03/2011, 23:22
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 20 años, 5 meses
Puntos: 4
Saber si se actualizó o se hizo un insert

Hola gente, necesito ayuda con una consulta de este tipo.

Código PHP:
UPDATE TABLA SET Campo1 = @Valor WHERE ID = @ID
IF @@ROWCOUNT 0
INSERT INTO TABLA 
(Campo1,IDVALUES (@Valor,@ID
el problema es que quiero saber cual de las dos cosas paso"" o sea que me retorne un mensaje de update o insert dependiendo del suceso ,,

espero se entienda y me puedan ayudar,
  #2 (permalink)  
Antiguo 26/03/2011, 21:13
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 20 años, 5 meses
Puntos: 4
Respuesta: Saber si se actualizó o se hizo un insert

Vamos gente , no hay nadie que me pueda ayudar ne el tema ?????
  #3 (permalink)  
Antiguo 27/03/2011, 21:57
Avatar de Aaronus23  
Fecha de Ingreso: diciembre-2010
Ubicación: https://home
Mensajes: 81
Antigüedad: 13 años, 4 meses
Puntos: 4
Respuesta: Saber si se actualizó o se hizo un insert

hmm...

podrias hacer un nuevo campo en la base... que cuando haga incert sea 1 y cuando sea update sea 2... asi solo es cuestion de obtener el numero y se sabe lo que se hizo no?
  #4 (permalink)  
Antiguo 28/03/2011, 08:36
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 20 años, 5 meses
Puntos: 4
Respuesta: Saber si se actualizó o se hizo un insert

Esa es buena ;) pero debe de haber alguna función predefinida para saber esto ,, es como cuando haces un insert y te retorna el último ID para tenerlo en cuenta para la próxima ...

Pero parece que nadie sabe hacerlo..
  #5 (permalink)  
Antiguo 28/03/2011, 09:22
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Saber si se actualizó o se hizo un insert

Hola apsol

Podrías ser mas claro?
Esto lo quieres hacer desde una función en mysql?
Desde un lenguaje de programación externo?

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #6 (permalink)  
Antiguo 28/03/2011, 09:23
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Saber si se actualizó o se hizo un insert

Lo que puedes usar en MySQL es ROW_COUNT para saber si la última sentencia INSERT/UPDATE/DELETE ejecutada afectó o no algún registro. Pero como MySQL no tiene sentencias opcionales como Oracle, el proceso de capturar si ocurrió, cuál y qué mensaje devuelve, lo tienes que programar tu mismo en un stored procedure.

La ora opción es modificar tu mismo el fuente de MySQL para incorporar las sentencias condicionales...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: insert
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 19:19.