J'ai une table simple avec des colonnes - identifiant, nom et salaire. Je veux obtenir le nom, le salaire et le salaire annuel par identifiant en utilisant une procédure stockée.Comment utiliser le paramètre de sortie avec d'autres noms de colonnes dans SQL Server
Je pensais que la création d'une procédure stockée simple comme ceci:
CREATE PROCEDURE spGetDetails
@id int,
@annualSal int out
AS
BEGIN
SELECT
name, salary,
@annualSal = (salary * 12)
FROM
tblPrac
WHERE
id = @id
END
Mais j'obtiens une erreur:
A SELECT statement that assigns a value to a variable must not be combined with data-retrieval operations
Si cette qs est déjà demandé s'il vous plaît me donner le lien et je Je vais supprimer ce qs. J'ai cherché mais je pense que le mot clé me manque. Merci
Avez-vous essayé de rechercher l'erreur sur Internet? – etsa
Le message d'erreur indiquant clairement que vous ne pouvez pas faire Assign & Selecting dans une seule instruction. –
Comme l'erreur l'indique, vous ne pouvez pas combiner les deux opérations, mais dans ce cas, il semble que l'utilisation d'un paramètre de sortie soit superflue. Puisque tout ce qui appelle la procédure est susceptible de lire les deux premières colonnes, pourquoi ne pas simplement utiliser une troisième colonne "AnnualSalary", et que tout ce qui l'appelle obtient le salaire annuel via ce paramètre plutôt qu'un paramètre de sortie? – GarethD