创建一个简单的SQL触发器

时间:2010-11-19 13:13:20

标签: sql-server tsql triggers

我有一个名为Events的表,我希望将信息插入到。

这是事件表架构:

create table Evento
(
    ID int primary key identity(1,1),
    Fecha datetime not null,
    Descripcion nvarchar(256) not null,
    Aplicacion nvarchar(256) not null,
    Equipo nvarchar(256) not null,
    Usuario nvarchar(256) not null,
    Tabla nvarchar(256) not null,
    Tipo nvarchar(256) not null
)

现在这里是我在Compra(Purchase)表中插入新记录时尝试创建的触发器脚本:

create trigger AuditoriaCompraInsert on Compra for INSERT
as
insert into Evento select GETDATE(), CONVERT(varchar(128),i.ID), APP_NAME, 
HOST_NAME, SYSTEM_USER, 'Compra', 'Insert' from inserted i

我收到这些错误:

  

Msg 207,Level 16,State 1,Procedure   AuditoriaCompraInsert,第3行无效   列名称“APP_NAME”。 Msg 207,等级   16,状态1,程序   AuditoriaCompraInsert,第4行无效   专栏名称'HOST_NAME'。

任何指导?

1 个答案:

答案 0 :(得分:3)

HOST_NAME()等是函数。添加括号。