Foros del Web » Programación para mayores de 30 ;) » .NET »

Comparar un dato en base de datos

Estas en el tema de Comparar un dato en base de datos en el foro de .NET en Foros del Web. Buenas estoy realizando una apliacion en visual basic.net en el 2010 y no se como resolver la siguiente duda. Al introducir los datos en un ...
  #1 (permalink)  
Antiguo 25/04/2012, 04:03
 
Fecha de Ingreso: marzo-2011
Mensajes: 37
Antigüedad: 13 años, 1 mes
Puntos: 0
Comparar un dato en base de datos

Buenas estoy realizando una apliacion en visual basic.net en el 2010 y no se como resolver la siguiente duda.

Al introducir los datos en un formulario cuando le doy a guardar necesito que el campo fecha de la base de datos sea comparado, ya que si la fecha introducida es nueva crearia una nueva fila con la fecha y los datos correspondientes, y si ya existe sumaria los campos a esa fecha.

Para ello utilizo un update (funciona correctamente) el problema esta en que si la fecha con los datos correspondientes no han sido introducidos antes, no introduce la fecha con los datos nuevos.
Entonces tendria que hacer un insert tambien, pero para ello necesito saber si la fecha se encuentra o no introducida en la base de datos. ¿Como hago para saber eso?¿Con un select extraigo el dato y despues comparo con un if? A ver si me podeis dar alguna solucion.

Un saludo y gracias.
  #2 (permalink)  
Antiguo 25/04/2012, 08:59
Avatar de giovani_loera  
Fecha de Ingreso: mayo-2011
Ubicación: Tijuana
Mensajes: 225
Antigüedad: 13 años
Puntos: 21
Respuesta: Comparar un dato en base de datos

Es facil, primero tienes que hacer una consulta usando la fecha como filtro.
Te hare el ejemplo usando un Store Procedure
Código SQL:
Ver original
  1. CREATE PROCEDURE sp_InsertUpdate
  2. @fecha DATETIME,
  3. @para1 TYPE,
  4. @para2 TYPE,
  5. @paraN TYPE
  6. AS
  7. DECLARE @ID INT
  8. BEGIN
  9. SET @ID=0 --Inicializamos
  10. SELECT @ID=ID FROM [tabla] WHERE Fecha=@fecha
  11. IF @ID=0
  12. BEGIN
  13. --hACEMOS EL INSERT
  14. END
  15. ELSE
  16. BEGIN
  17. --HACEMOS EL UPDATE
  18. END
  19. END

Espero que te sirva

Etiquetas: dato, visual
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 03:13.