Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/06/2012, 14:44
kagomagoo
 
Fecha de Ingreso: junio-2012
Ubicación: torreon
Mensajes: 12
Antigüedad: 11 años, 10 meses
Puntos: 0
Pregunta consulta o funcion con un trigger

Necesito ayuda ya que tengo broncas con un trigger es un pequeño trabajo de escuela pero estoy ya desesperado que no logro compilarlo bien, les proporciono todo el codifo

go
use master
go
drop database carrillo
go
create database carrillo
go
use carrillo
go

create table productos
(
id_productos int primary key,
nombre_producto nvarchar(100),
descripcion nvarchar(100),
unidades nvarchar(100),
precio int
)


create table pais
(
id_pais int primary key,
nombre nvarchar(100),
costo int
)


create table proveedor
(
id_proveedor int primary key,
nombre nvarchar(100),
direccion nvarchar(100),
telefono nvarchar(100)
)


create table cliente
(
id_cliente int primary key,
nombre nvarchar(100),
direccion nvarchar(100),
telefono nvarchar(100)
)

create table exportacion
(
id_exportacion int primary key,
id_pais int foreign key (id_pais)references pais (id_pais),
id_productos int foreign key (id_productos) references productos (id_productos),
id_proveedor int foreign key (id_proveedor) references proveedor (id_proveedor),
id_cliente int foreign key (id_cliente) references cliente (id_cliente),
fecha nvarchar(100),
cantidad nvarchar(100)
)

create table concentrado
(
id_productos int foreign key (id_productos) references productos (id_productos),
id_exportacion int foreign key (id_exportacion) references exportacion (id_exportacion),
id_concentrado int primary key identity (1,1),
gastos nvarchar (200),
)

insert into cliente (id_cliente,nombre,direccion,telefono)
values(1,'arturo','callevieja 50','123123')


insert into proveedor (id_proveedor,nombre,direccion,telefono)
values (1,'vaquecia','avenidavivanorye','12345678')

/*TRIGGER*/------
go
create trigger gastos_exportaciones on exportacion
for insert as
begin
declare @productos int
declare @gasto int
declare @cantidad int
declare @precio int
declare @exportacion int

declare @pais int

select @productos = id_productos, @cantidad = cantidad, @exportacion = id_exportacion, @gasto = gasto
from inserted
select @precio = precio
from productos where id_productos = @productos


select @gasto =(@cantidad * @precio) + costo, @pais = id_pais
from pais where id_pais = @pais
insert into concentrado values (@productos, @exportacion, @gasto)
end
go

select @productos = id_productos, @cantidad = cantidad
from inserted
select @precio = precio
from productos where id_productos = @productos*/

insert into productos (id_productos,nombre_producto,descripcion,unidades ,precio)
values (1,'leche','vaquitafeliz','1','30')

insert into pais(id_pais,nombre,costo)
values (1,'venezuela','4000')


insert into exportacion(id_exportacion,id_pais,id_productos,id _proveedor,id_cliente,fecha,cantidad)
values(1,1,1,1,1,'051212','10')


select * from concentrado

select proveedor.nombre,nombre_producto,unidades
from proveedor inner join exportacion on proveedor.id_proveedor=exportacion.id_proveedor
inner join productos on exportacion.id_productos=productos.id_productos

Donde la funcion del trigger es llenar una tabla con un concentrado de gastos de las exportaciones, ahi por favor aver tambien si me ayudan a corregir que errores tengo