Ver Mensaje Individual
  #5 (permalink)  
Antiguo 03/03/2004, 19:30
Avatar de Mickel
Mickel
 
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 22 años
Puntos: 7
Te resta porque no has puesto el WHERE en la clausula UPDATE. Deberia ser algo como
update articulos
set articulos.cantidad_total_articulos = (select (articulos.cantidad_total_articulos - Numero_linea.unidades)
from articulos,Numero_Linea
where Numero_linea.Codigo_Articulo=Articulos.codigo_Arti culo)
where articulos.codigo_articulo=(select codigo_articulo from inserted);

algo asi, disculpame, no me acuerdo claramente de la sintaxis en ORACLE. Es ORACLE, no?

TOP 1 lo que hace es que tome el primer registro de varios. Al devolverte un valor unico entonces ya no tienes el error de que el subquery devuelva mas de un valor. La otra solucion hubiese sido que no hagas un = si no un IN
__________________
No tengo firma ahora... :(