Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/11/2008, 11:56
Avatar de Drknow
Drknow
 
Fecha de Ingreso: febrero-2008
Mensajes: 121
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Crear un Trigger en Sql Server 2005

--1) CREANDO BASE DE DATOS
CREATE DATABASE db_trigger

--1.2)CAMBIANDO BASE DE DATOS
USE db_trigger

--1.3)CREANDO TABLA db_trigger
CREATE TABLE c_cliente//hijo
(
tipo_t CHAR(1) NOT NULL,
fecha DATETIME NOT NULL,
estacion VARCHAR(30) NOT NULL,
numclie INT NOT NULL,
nombre VARCHAR(30) NULL,
repclie INT NULL,
limitecredito MONEY NULL,
)

--1.4)CREANDO TABLA PARA INSERCCION DE TRIGGER
CREATE TABLE cliente//padre
(
id CHAR(1) NOT NULL,
fecha DATETIME NOT NULL,
estacion VARCHAR(30) NOT NULL,
numclie INT NOT NULL,
nombre VARCHAR(30) NULL,
repclie INT NULL,
limitecredito MONEY NULL,
)
--2) CREANDO UN TRIGGER PARA REGISTRAR UNA INSERCCION

CREATE TRIGGER i_cliente ON cliente
FOR INSERT AS INSERT INTO c_cliente(tipo_t,fecha,estacion,numclie,nombre,rep clie,limitecredito)
SELECT 'I',getdate(),host_name(),numclie,nombre,repclie,l imitecredito FROM INSERTED

--3) CREANDO UN TRIGGER PARA ACTUALIZAR UN REGISTRO DE CLIENTE
CREATE TRIGGER a_cliente ON cliente
FOR UPDATE AS INSERT INTO c_cliente(tipo_t,fecha,estacion,numclie,nombre,rep clie,limitecredito)
SELECT 'A',getdate(),host_name(),numclie,nombre,repclie,l imitecredito FROM INSERTED

--4)CREANDO CONSULTAS
SELECT * FROM cliente
SELECT * FROM c_cliente

--5)INSERTANDO DATOS EN LA TABLA c_cliente
INSERT INTO cliente VALUES('M','14/05/1989','INVIERNO',2100,'JUAN',129,9999.99)
INSERT INTO cliente VALUES('J','08/10/1988','OTOÑO',3588,'JOSE',105,99999.99)

--6)ACTUALIZANDO DATOS EN LA TABLA c_cliente
UPDATE cliente SET limitecredito=0 WHERE id='J'