Tôi có thể trả về UNIQUEIDENTIFIER từ một thủ tục lưu sẵn sử dụng câu lệnh RETURN hay chỉ bằng cách sử dụng câu lệnh OUTPUT?Máy chủ SQL: Trả về bộ định danh duy nhất từ thủ tục lưu sẵn
tức là để trả lại PersonID UNIQUEIDENTIFIER:
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
Cảm ơn
nghĩ đó là trường hợp ... cảm ơn – Belliez
Chết tiệt. Tôi đặc biệt cần một PROC hoặc CHỨC NĂNG mà sẽ làm một INSERT và trực tiếp trả về một giá trị uniqueidentifier (thay vì phải sử dụng một tham số OUTPUT). –