我不明白@@Identity。这到底是做什么的?我的表的身份规范设置为是,身份增量设置为 1。我正在查看数据库程序员的代码,发现以下内容:
DECLARE @CustomerID int,
INSERT INTO Customers
(Name, Login, Password, IsActive,)
VALUES('University', NULL, NULL, 1,)
SET @CustomerID = @@IDENTITY
但在插入后的其他地方,她并没有包括@@IDENTITY
. 例如:在相同的代码中,她有:
INSERT INTO Meters
(Name, Type, SiteID, CustomerAccountID)
SELECT Sites.Name + ' ' + Type, ID, ID, NULL
FROM Sites
CROSS JOIN MeterTypes
WHERE ProjectID = @ProjectID
AND tblMEP_MeterTypes.ID IN(1, 3, 13)
谁能告诉我什么时候使用@@IDENTITY
?我认为它应该在每个插入语句的末尾。顺便说一下,上面的表(客户)有一个名为 ID 的列,它是一个主键字段,不能为 Null!这如何有效?不应该是这样的:
DECLARE @CustomerID int,
INSERT INTO Customers
(ID, Name, Login, Password, IsActive,)
VALUES(1, 'University', NULL, NULL, 1,)
SET @CustomerID = @@IDENTITY