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

insert en sql server

Estas en el tema de insert en sql server en el foro de SQL Server en Foros del Web. hola todos necesito de sus conocimientos necesito generar un insert pero que pregunte si el datos ya se encuentra si esta que lo actualize y ...
  #1 (permalink)  
Antiguo 07/11/2011, 14:44
 
Fecha de Ingreso: junio-2010
Mensajes: 132
Antigüedad: 13 años, 10 meses
Puntos: 2
insert en sql server

hola todos necesito de sus conocimientos

necesito generar un insert pero que pregunte si el datos ya se encuentra si esta que lo actualize y si no que lo inserte se puede generar algo asi ayuda porfisssss
o algun procedimineto almacenado no caxo ????????????
  #2 (permalink)  
Antiguo 07/11/2011, 15:05
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: insert en sql server

Eso sale con 2 consultas supongamos que tienes lo siguiente

tabla1
id nombre

tabla2
id nombre

Tabla 1 seria una tabla temporal o una tabla en donde almacenes la informacion que vas a procesar, tabla2 seria tu tabla "buena" o de produccion, supongamos que en tabla 2 tienes los ids 2 y 3, y vas a procesar el id 4.

insert into tabla2
select * from tabla1
left join tabla2 on (tabla1.id=tabla2.id)
where tabla2.id is null


y para el update


update tabla2
set nombre=t1.nombre
from
(
select * from tabla1
left join tabla2 on (tabla1.id=tabla2.id)
where tabla2.id is not null
) as t1 where t1.id=tabla2.id

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 07/11/2011, 18:07
 
Fecha de Ingreso: junio-2010
Mensajes: 132
Antigüedad: 13 años, 10 meses
Puntos: 2
Respuesta: insert en sql server

oka gracias Libras voy a probar como me va

Etiquetas: insert, server, sql
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:24.