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

como crear triguer

Estas en el tema de como crear triguer en el foro de Mysql en Foros del Web. hola muchachos necesito que me colabores con algo es que tengo cuatro campos en mi base de datos de notas que son nota1 - nota2 ...
  #1 (permalink)  
Antiguo 31/07/2013, 15:03
 
Fecha de Ingreso: julio-2013
Mensajes: 16
Antigüedad: 10 años, 9 meses
Puntos: 0
como crear triguer

hola muchachos necesito que me colabores con algo es que tengo cuatro campos en mi base de datos de notas que son

nota1 - nota2 - nota3 - nota4 - primer_periodo

lo que queiro es que cuando se ingrese la nota uno desde php a la base de datos el campo primer_periodo la suma d elos cuatro campos dividido entre 4 asi
(nota1 + nota2 + noa3 + nota4)/4

y el campo primer periodo me aparezca el resultado cada vez que ingresen el valor de cada campo gracias
  #2 (permalink)  
Antiguo 01/08/2013, 02:55
 
Fecha de Ingreso: marzo-2013
Ubicación: Jaén, Andalucía
Mensajes: 129
Antigüedad: 11 años
Puntos: 2
Respuesta: como crear triguer

como bien se ha dicho en otros muchos posts, esto es para resolver dudas, no para hacer pedidos.... aquí está el subforo de colaboradores http://www.forosdelweb.com/f143/ , por si alguien quiere hacerte el pedido, si no tienes ni planteado nada, ni sabes como hacer un trigger..... también puedes buscar información... por ejemplo ...http://es.wikipedia.org/wiki/Trigger_(base_de_datos)
  #3 (permalink)  
Antiguo 01/08/2013, 04:14
 
Fecha de Ingreso: julio-2013
Mensajes: 87
Antigüedad: 10 años, 9 meses
Puntos: 9
Respuesta: como crear triguer

Yo no veo necesario para eso un trigger. ¿No es más simple al hacer el select calcular dicho valor que tenerlo guardado en la base de datos?

Código SQL:
Ver original
  1. SELECT (nota1+nota2+nota3+nota4)/4 AS primer_periodo FROM tabla
  #4 (permalink)  
Antiguo 01/08/2013, 04:17
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: como crear triguer

Exacto.
Una de las primeras cosas que te enseñan en un curso de bases de datos es que jamás se guardan datos que se puedan calcular en la misma consulta.
Sólo ocupan espacio, no producen ventajas en los procesos y además requieren de verificaciones y actualizaciones, para evitar datos inconsistentes (si algo no se actualiza,la información puede no ser fiable), todo lo cual termina afectando la performance y seguridad del sistema.

Ni el trigger es necesario para eso, ni el campo lo es.

Adicionalmente, te comento que cuando tienes N notas de un mismo alumno, no se usa una tabla para poner en un mismo registro todas las notas. Lo que se hace es una tabla donde haya un registro por nota, con lo cual puedes luego hacer algo como:
Código MySQL:
Ver original
  1. SELECT alumno_id, SUM(nota)/4 primer_periodo
  2. FROM tabla
  3. GROUP BY alumno_id

O incluso:
Código MySQL:
Ver original
  1. SELECT alumno_id, AVG(nota) primer_periodo
  2. FROM tabla
  3. GROUP BY alumno_id
si quieres el promedio.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campo, php
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 21:02.