Sql server 2005 在触发器中插入和删除的虚拟表的别名

Sql server 2005 在触发器中插入和删除的虚拟表的别名,sql-server-2005,triggers,output-clause,Sql Server 2005,Triggers,Output Clause,如何在MSSQL 2005中为触发器中插入和删除的虚拟表设置别名,以便在触发器中稍后的输出子句中使用另一组插入和删除的虚拟表 我需要根据在触发器中为这些表别名 [编辑] 我应该说得更清楚些,我想我应该举个例子 我主要想做以下几点: CREATE TRIGGER [dbo].[someTrigger] ON [dbo].[Table_1] FOR INSERT AS CREATE TABLE #tmpdatatable (field1 int, field2 int) INSERT dbo.T

如何在MSSQL 2005中为触发器中插入和删除的虚拟表设置别名,以便在触发器中稍后的输出子句中使用另一组插入和删除的虚拟表

我需要根据在触发器中为这些表别名

[编辑]

我应该说得更清楚些,我想我应该举个例子

我主要想做以下几点:

CREATE TRIGGER [dbo].[someTrigger]
ON [dbo].[Table_1]
FOR INSERT
AS

CREATE TABLE #tmpdatatable (field1 int, field2 int)

INSERT dbo.Table_2
    OUTPUT inserted.ident, ins.objid INTO #tmpdatatable
SELECT 2*objid
FROM inserted as ins (NOLOCK) 

.. do some stuff to the tmpdatatable .. 

DROP TABLE #tmpdatatable
PRINT 'processed inserted data'

您可以像其他表别名一样对其进行别名:

FROM inserted as ins

然后将别名用于列定义

SELECT ins.RowID, ins.Name
FROM inserted as ins
SELECT ins.RowID, ins.Name
FROM inserted as ins