您的位置:首页 > 运维架构

A. 将 @@IDENTITY 和 SCOPE_IDENTITY 用于触发器

2008-01-13 17:31 351 查看
USE tempdb

GO

CREATE TABLE TZ (

Z_id int IDENTITY(1,1)PRIMARY KEY,

Z_name varchar(20) NOT NULL)

INSERT TZ

VALUES ('Lisa')

INSERT TZ

VALUES ('Mike')

INSERT TZ

VALUES ('Carla')

SELECT * FROM TZ

--Result set: This is how table TZ looks.

Z_id Z_name

-------------

1 Lisa

2 Mike

3 Carla

CREATE TABLE TY (

Y_id int IDENTITY(100,5)PRIMARY KEY,

Y_name varchar(20) NULL)

INSERT TY (Y_name)

VALUES ('boathouse')

INSERT TY (Y_name)

VALUES ('rocks')

INSERT TY (Y_name)

VALUES ('elevator')

SELECT * FROM TY

--Result set: This is how TY looks:

Y_id Y_name

---------------

100 boathouse

105 rocks

110 elevator

CREATE TRIGGER Ztrig

ON TZ

FOR INSERT AS

BEGIN

INSERT TY VALUES ('')

END

INSERT TZ VALUES ('Rosalie')

SELECT SCOPE_IDENTITY() AS [SCOPE_IDENTITY]

GO

SELECT @@IDENTITY AS [@@IDENTITY]

GO

SCOPE_IDENTITY

4

@@IDENTITY

115

/**//*@@IDENTITY returned the last identity value inserted to TY by the trigger. This fired because of an earlier insert on TZ.*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: