Oracle - URGENTE! Recalcula valor a columna de tabla Oracle

 
Vista:

URGENTE! Recalcula valor a columna de tabla Oracle

Publicado por Paulina S. (14 intervenciones) el 15/03/2001 17:34:22
Hola a todos.
Tengo una tabla Oracle v8i en la cual existen campos que se deben calcular según el dato de otros. Por ejemplo:

- La tabla es Productos
- Tiene entre otras columnas el Precio, Porc.Cobranza, y Precio Total.

En este momento el Precio tiene el mismo valor que Precio Total, y necesito que Precio Total sea igual a (Precio * Porc.Cobranza).

¿Cómo puedo hacer que se recalcule Precio Total?
¿Me podrían decir cómo sería el código en SQL Plus?

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:URGENTE! Recalcula valor a columna de tabla Ora

Publicado por PAULINA (14 intervenciones) el 15/03/2001 19:03:56
Update productos
set Precio Total = (Precio * Porc.Cobranza)
/
commit
/

nota: esto actualizará todos los registros de la tabla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE! Recalcula valor a columna de tabla Ora

Publicado por pardillejo (1 intervención) el 30/03/2001 14:38:19
Hola. Posiblemente ya es un poco tarde para la urgencia, pero es que me registrado hoy.

Si lo que quieres es que el calculo sea automatico, es decir, que cada vez que haya un cambio en un registro del valor de Precio y/o Porc. Cobranza, se te recalcule automatica_ el valor de Precio_Total, prueba a crearte un trigger de base de datos. Seria algo asi (no se si la sintaxis es del todo correcta, pero como idea ...):

create or replace trigger "<<nombre_del_trigger>>"
after update of precio, proc_cobranza on productos
new as new for each row
begin
Update productos
set Precio Total = (:new.Precio * :new.Porc.Cobranza)
end;

No es necesario hacer el commmit pues en los triggers es implicito.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar