Retroceder   Foros del Web > Programación para sitios web > Bases de Datos

Respuesta
 
Herramientas Desplegado
Antiguo 29-abr-2005, 17:36   #1 (permalink)
sir_joshua está en el buen camino
 
Avatar de sir_joshua
 
Fecha de Ingreso: diciembre-2004
Mensajes: 411
Triste TRIGGER en oracle 10g.

ke tal tengo una tabla que se llama mitabla y tiene tres campos c1,c2 y media todos numericos...

quiero hacer un trigger ke actualice media con la media de c1 y c2 cuando se haga un insert o un update; pongo lo siguiente pero no funciona cuando hago un update no hace nada el trigger...

create or replace trigger promedio
after update or insert on mitabla
for each row
declare
media number;
begin
select (:new.c1 + :new.c2)/2
into media
from dual;
end;
/

que modifico o ke puedo hacer..? salu2.
__________________
http://sir-joshua.hi5.com
Mex. Mex.
sir_joshua está desconectado   Responder Citando
Antiguo 01-may-2005, 11:19   #2 (permalink)
kikolice ha deshabilitado el karma
 
Avatar de kikolice
 
Fecha de Ingreso: marzo-2004
Mensajes: 1.107
para facil, solo te faltaria asignarle el valor al campo, o sea la linea

:new.media := media;

aunque no es necesario hacer el select, podrias hacer ( si no mal recuerdo )

:new.media := (:new.c1 + :new.c2) / 2;
__________________
Blogzote.com :-) Mi blog
kikolice está desconectado   Responder Citando
Antiguo 02-may-2005, 11:12   #3 (permalink)
sir_joshua está en el buen camino
 
Avatar de sir_joshua
 
Fecha de Ingreso: diciembre-2004
Mensajes: 411
mmm no amigo, si pongo:

create or replace trigger promedio
after update or insert on mitabla
for each row
declare
media number;
begin
select (:new.c1 + :new.c2)/2
into media
from dual;
:new.media := media;
end;
/

************

create or replace trigger promedio
after update or insert on mitabla
for each row
begin
:new.media (:new.c1 + :new.c2)/2;
end;
/

tambien marca error .... nose como se te ocurriria que podria kedar bien..?

salu2.
__________________
http://sir-joshua.hi5.com
Mex. Mex.
sir_joshua está desconectado   Responder Citando
Antiguo 03-may-2005, 18:04   #4 (permalink)
kikolice ha deshabilitado el karma
 
Avatar de kikolice
 
Fecha de Ingreso: marzo-2004
Mensajes: 1.107
encuentra las diferencias entre

:new.media := (:new.c1 + :new.c2) / 2;

y

:new.media (:new.c1 + :new.c2)/2;
__________________
Blogzote.com :-) Mi blog
kikolice está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 11:45.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93