lunes, 10 de diciembre de 2007

Triggers



¿Qué son?

Los triggers, disparadores o desencadenadores, son un tipo de procedimientos almacenados los cuales se ejecutan al momento de que se realice un evento (insert, delete, update) sobre la tabla que se indique.

¿Cómo crearlos?



Sintaxis para crear un trigger:



create trigger "nombre del trigger"
on "nombre de la tabla"
for "nombre del evento"
as
"sentencias"



Nota: Para modificar un trigger se utiliza la palabra "alter", en lugar del "create".



¿Cómo eliminarlos?



Sintaxis para eliminar un trigger:


drop trigger "nombre del trigger"




Ejemplos



Por ejemplo, se cuenta con dos tablas:


Se desea almacenar el total de productos con que se cuenta; es decir, cada vez que se inserte un producto se debe actualizar el total de productos. Es aquí donde entran los triggers, cada vez que se inserte un producto se debe actualizar la tabla totales, en su campo total_prod.


create trigger DisInsProductos
on productos
for insert
as
if(select count(*) from totales)=0
insert into totales values(1,0)
else
update totales set total_prod=total_prod+1


En el ejemplo primero se checa si ya se inserto un registro en la tabla totales, sino se realizo se inserta, en caso contrario, nada mas se actualiza… sencillo no creenJ.

Ahora otro ejemplo:


En este caso, cada vez que se ingrese un autor se debe incrementar el total_Autores en la tabla estadísticas, este proceso es igual para los libros. Además cada vez que se ingrese un libro se debe ir calculando el precio promedio de todos los libros. El script para este ejemplo:


--Trigger para Autores-Insertar


create trigger Dis_Estadisticas_Act
on Autores
for insert
as
if
(select count(*) from estadísticas)=0
insert into estadísticas values (1,0,0)
else
update estadísticas set total_Autores=Total_Autores + 1




--Trigger para el precio




create trigger Dis_Libros_Act
on Libros
for insert
as
--En este punto se declara una variable
declare @precio float
--Se guarda el precio que se acaba de insertar en la variable.
--La tabla inserted se crea con los datos insertados.
select @precio= precio from inserted
update Estadísticas set precio_promedio = (precio_promedio+@precio)/total_libros



Ahora, cada vez que se elimine un autor, el total de autores de la tabla estadísticas debe disminuir.




--Trigger para Autores-Eliminar

alter trigger Dis_Estadísticas_Elim
on Autores
for delete
as
update estadísticas set total_Autores=total_Autores-1

miércoles, 5 de diciembre de 2007

UTCV

Sistema Despresurizado



¿Qué es el sistema despresurizado?


Es un sistema para aquellas personas que desean continuar con sus estudios universitarios y que por motivos de trabajo; diversidad de horarios en sus actividades personales u otras razones, NO pueden integrarse a un horario escolar en días hábiles.


Beneficios

Título de TSU en Tecnologías de la Información y Comunicación. Área Informática Administrativa en: 3 años


Horarios




Requisitos

• Certificado de bachillerato (Original y Copia)
• Acta de Nacimiento (Original y Copia)
• Tres fotografías (tamaño infantil)
• Promedio Mínimo de 7.00
• Copia CURP
• Constancia laboral


Informes

Universidad Tecnológica del Centro de Veracruz
Ave. Universidad No. 350
Carr. Fed. Cuitláhuac-La Tinaja
Cuitláhuac, Ver. 94910

Tel. 278-732-5717 y 278-732-5792
Correo Electrónico: informe@utcv.edu.mx
Página Web: http://www.utcv.edu.mx/