请教一个SQL存储过程中语法的问题

来源:百度知道 编辑:UC知道 时间:2024/05/25 03:57:46
下面是一个具体的存储过程,我只想问其中@@identity是什么意思?两个@@表示什么?还有name为什么要加上[]?

ALTER PROCEDURE sp_InsertPhoto
@name AS VARCHAR( 50 ),
@image AS IMAGE
AS
INSERT INTO Photos( [name], photo )
VALUES ( @name, @image )
RETURN @@identity
GO

@@identity是返回最后插入的标识值的系统函数。用于获得刚分配的自动增长列的序号。
name是系统保留字,所以要加[]号,一个良好的习惯是把所以用户定义的表名和列名都加上[]号,防止意外出错也便于识别