创建一个简单的 SQL 触发器
我有一个名为“事件”的表,我想向其中插入信息。
这是事件表架构:
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(购买)表时我尝试创建的触发器脚本:
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
我收到以下错误:
消息 207,级别 16,状态 1,过程 AuditoriaCompraInsert,第 3 行无效 列名称“APP_NAME”。消息 207,级别 16,状态 1,程序 AuditoriaCompraInsert,第 4 行无效 列名称“HOST_NAME”。
有什么指导吗?
I have a table called Events that I want to insert information to.
Here is the Event table schema:
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
)
Now here is the trigger script I'm trying to create whenever a new record is inserted into the Compra (Purchase) table:
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
I get these errors:
Msg 207, Level 16, State 1, Procedure
AuditoriaCompraInsert, Line 3 Invalid
column name 'APP_NAME'. Msg 207, Level
16, State 1, Procedure
AuditoriaCompraInsert, Line 4 Invalid
column name 'HOST_NAME'.
Any guidance?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
HOST_NAME()
等都是函数。添加括号。HOST_NAME()
, etc are functions. Add the parenthesis.