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

[B]procedimiento sql server[/B]

Estas en el tema de [B]procedimiento sql server[/B] en el foro de Bases de Datos General en Foros del Web. buenas a todos: soy nuevo en sql server, asique seguramente sera facil lo que quiero hacer. Estoy haciendo una pagina en asp, y utilizo sql ...
  #1 (permalink)  
Antiguo 12/05/2008, 09:03
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 16 años
Puntos: 1
[B]procedimiento sql server[/B]

buenas a todos:

soy nuevo en sql server, asique seguramente sera facil lo que quiero hacer.
Estoy haciendo una pagina en asp, y utilizo sql server 2005.

Tengo el siguiente procedimiento:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO





ALTER Procedure [dbo].[PA_Lugares_Temas__Alta]

@idLugar as integer,
@idTema as integer


AS

BEGIN

DECLARE @totid as integer
DECLARE Cursorid CURSOR FAST_FORWARD FOR

SELECT id
From imagenes_vs_temas
where id_foto in
(select id
from lugares
where idnombreLugares = @idLugar)
and id_tema = @idTema

OPEN Cursorid


FETCH NEXT FROM Cursorid INTO @totid

CLOSE Cursorid;
DEALLOCATE Cursorid;


EXCEPTION
WHEN NO_DATA_FOUND THEN
insert into imagenes_vs_temas (id_foto, id_tema)
Select id, @idTema
from Lugares
Where idNombreLugares = @idLugar;

END

END [dbo].[PA_Lugares_Temas__Alta];


Les explico: le paso dos valores, mi idea es mediante la select que tengo buscar si no hay registros, entonces haria un insert, si por el contrario me encuentra algun registro tendria que hacer un update.

Gracias de antemano
  #2 (permalink)  
Antiguo 13/05/2008, 02:22
 
Fecha de Ingreso: abril-2008
Mensajes: 51
Antigüedad: 16 años
Puntos: 1
Re: [B]procedimiento sql server[/B]

Es urgente porfavor
  #3 (permalink)  
Antiguo 13/05/2008, 08:43
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Re: [B]procedimiento sql server[/B]

Hola,

Esta la opcion de preguntar si existe o no el registro, no te hace falta un cursor.

Código:
begin

if exists (SELECT id From imagenes_vs_temas where id_foto in (bla bla bla))
  begin
    update algo
  end
else
  begin
    insert algo
  end

end
GO
Saludos
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 14:18.