UNIQUEIDENTIFIER, RETURN deyimini kullanarak saklı bir yordamdan döndürebilir miyim, yoksa yalnızca OUTPUT deyimini kullanarak mı?SQL Server: Saklı yordamından benzersiz tanımlayıcıyı döndür
yani PersonID uniqueIdentifier dönmek için:
CREATE PROCEDURE CreatePerson
@Name NVARCHAR(255),
@Desc TEXT
AS
DECLARE @Count INT
DECLARE @JobFileGUID UNIQUEIDENTIFIER
-- Check if job exists?
SET @Count = (SELECT COUNT(Name) AS Name FROM Person WHERE [email protected])
IF @Count < 1
BEGIN
SET @PersonGUID = NEWID();
INSERT INTO Person
(PersonID, Name, [Desc])
VALUES (@PersonGUID, @Name, @Desc)
END
SELECT @PersonGUID = Person.PersonID
FROM Person
WHERE Name = @Name
RETURN @PersonGUID
GO
Teşekkür
saklı prosedürde
düşüncesi ... teşekkürler – Belliez
Lanet. Özellikle bir INSERT yapacak ve tek bir tanımlayıcı değeri (bir OUTPUT parametresi kullanmak zorunda kalmadan) döndüren bir PROC veya FUNCTION'a ihtiyaç duydum. –