Le conflit de type d'opérande: int est incompatible avec uniqueidentifier. Comment faire de l'identificateur unique une SORTIE

UNIQUEIDENTIFIER d'avoir cette procédure pour fonctionner correctement en étant capable d'get la sortie de la valeur UNIQUEIDENTIFIER , mais quand j'essaye d'exécuter la requête cela me donne l'erreur

Le conflit de type d'opérande: int est incompatible avec uniqueidentifier

J'ai essayé différentes choses mais je n'arrive pas à find une solution.

voici mon code

 -- ================================================= -- Example: [mob].[procedureName] 369, NULL, 23741, "somePath", "SomeName", "clientName", NULL -- Example: [mob].[procedureName] -- Example: [mob].[procedureName] -- ================================================= ALTER PROCEDURE [mob].[uspInsertEmail] ( @ParamCompany VARCHAR(50), @ParamDate DATETIME, @ParamCreatedBy VARCHAR(50), @ParamFilePath VARCHAR(200), @ParamFileName VARCHAR(100), @ParamClientFileName VARCHAR(100), @ParamGUID UNIQUEIDENTIFIER OUTPUT ) AS DECLARE @GUID UNIQUEIDENTIFIER=NEWID() INSERT INTO [mob].[tblEmail] ( [Company], [GuidSsortingng], [Date], [CreatedBy] ) VALUES ( @ParamCompany, @GUID, @ParamDate, @ParamCreatedBy ) INSERT INTO [mob].[tblEmailAttachment] ( [Email], [FilePath], [FileName], [ClientFileName], [CreatedBy] ) VALUES ( IDENT_CURRENT ('mob.tblEmail'), @ParamFilePath, @ParamFileName, @ParamClientFileName, @ParamCreatedBy ) SELECT @GUID AS EmailGuid SET @ParamGUID = @GUID 

J'ai lu que je devrais faire le UNIQUEIDENTIFIER à être dans une clause OUTPUT , mais je ne sais pas exactement comment faire le @GUID comme OUTPUT

Je rendrais cela beaucoup plus simple. Quelque chose comme ça.

 -- ================================================= -- Example: [mob].[procedureName] 369, NULL, 23741, "somePath", "SomeName", "clientName", NULL -- Example: [mob].[procedureName] -- Example: [mob].[procedureName] -- ================================================= ALTER PROCEDURE [mob].[uspInsertEmail] ( @ParamCompany VARCHAR(50), @ParamDate DATETIME, @ParamCreatedBy VARCHAR(50), @ParamFilePath VARCHAR(200), @ParamFileName VARCHAR(100), @ParamClientFileName VARCHAR(100), @ParamGUID UNIQUEIDENTIFIER OUTPUT ) AS set nocount on; select @ParamGUID = NEWID(); INSERT INTO [mob].[tblEmail] ( [Company], [GuidSsortingng], [Date], [CreatedBy] ) VALUES ( @ParamCompany, @ParamGUID, @ParamDate, @ParamCreatedBy ) INSERT INTO [mob].[tblEmailAttachment] ( [Email], [FilePath], [FileName], [ClientFileName], [CreatedBy] ) VALUES ( SCOPE_IDENTITY(), @ParamFilePath, @ParamFileName, @ParamClientFileName, @ParamCreatedBy )