Procédure stockée SQL – Pourquoi utiliser "OUT" alors que je peux simplement sélectionner

CREATE PROCEDURE GetImmediateManager @employeeID INT, @managerID INT OUTPUT AS BEGIN SELECT @managerID = ManagerID FROM HumanResources.Employee WHERE EmployeeID = @employeeID END 

Salut les gars, puis-je connaître l'utilisation exacte de "OUT"? En quoi est-ce différent avec la procédure stockée ci-dessous?

 CREATE PROCEDURE GetImmediateManager @employeeID INT, @managerID INT AS BEGIN SELECT @managerID = ManagerID FROM HumanResources.Employee WHERE EmployeeID = @employeeID END 

Pour la réponse, passez par le lien ci-dessous

( https://technet.microsoft.com/en-us/library/ms187004(v=sql.105).aspx )

L'utilisation de la procédure des parameters de sortie peut renvoyer une sortie scalaire. En outre, lorsque vous utilisez un paramètre, nous pouvons get multiple output de la procédure.

Si vous utilisez select pour get le résultat, vous devez stocker le résultat de la procédure dans un dataset , par exemple DataTable in .NET

Généralement, si votre résultat est scalaire, il est plus facile d'utiliser le paramètre de sortie plutôt que l'set de résultats.