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

actualizar datos ente tablas

Estas en el tema de actualizar datos ente tablas en el foro de SQL Server en Foros del Web. hola a todos, tengo 2 tablas en la base de datos (SiProducto y Excel).... una de ellas la importe desde una planilla excel. La tabla ...
  #1 (permalink)  
Antiguo 13/11/2008, 05:40
 
Fecha de Ingreso: octubre-2008
Mensajes: 58
Antigüedad: 15 años, 7 meses
Puntos: 0
actualizar datos ente tablas

hola a todos, tengo 2 tablas en la base de datos (SiProducto y Excel).... una de ellas la importe desde una planilla excel. La tabla excel tiene campos iguales y la quiero usar para actualizar los datos de la otra tabla que ya existia en sql server... la condicion es que el valor del campo id (cod_producto) sea el mismo en ambas (ambas son varchar(255)), cumpliendose eso, la idea es que el valor del campo cod_barra en la tabla excel actualice el cod_barra de SiProducto

la query que intento colocar es esta pero no estoy bien,

UPDATE SiProducto
SET SiProducto3.Cod_Barra IN (
SELECT e.Cod FROM Excel e, SIProducto s
WHERE e.Cod_Producto = s.Codigo_Producto ) ;

el sql server me arroja el error :

Servidor: mensaje 156, nivel 15, estado 1, línea 2
Sintaxis incorrecta cerca de la palabra clave 'IN'.

como debiese ser la query?

jedo
  #2 (permalink)  
Antiguo 13/11/2008, 07:29
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Respuesta: actualizar datos ente tablas

Código:
UPDATE SiProducto
SET    Cod_Barra   = e.Cod
From  SiProducto  s
Inner join
      Excel e
On    e.Cod_Producto = s.Codigo_Producto
Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
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 07:13.