J'ai écrit une procédure stockée dans SQL Server qui renvoie une valeur Bigint
Retour bigint de SQL Server procédure stockée
alter procedure [dbo].adding
@one bigint,
@two bigint,
@startid bigint output
as
begin
set @startid = @one + @two
return @startid
end
Mais alors que la valeur de retour, je reçois une exception
Erreur de dépassement arithmétique conversion de l'expression en type de données int
Est-ce que quelqu'un peut m'aider à résoudre ce problème?
Merci à l'avance
Remarque: Au-dessus de la requête est pas exactement la même procédure que j'utilise
mise à jour:
J'ai un code comme ci-dessous
_lookupId = cmdInsert.Parameters.Add("RetVal", SqlDbType.BigInt);
_lookupId.Direction = ParameterDirection.ReturnValue;
_procIn01 = cmdInsert.Parameters.Add("@idCount", SqlDbType.VarChar, 500);
cmdInsert.Parameters["@idCount"].Value = idCount;
_procIn01.Direction = ParameterDirection.Input;
_procIn02 = cmdInsert.Parameters.Add("@requestFrom", SqlDbType.VarChar, 100);
cmdInsert.Parameters["@requestFrom"].Value = clientId;
_procIn02.Direction = ParameterDirection.Input;
_pramOut = cmdInsert.Parameters.Add("@startID", SqlDbType.BigInt);
_pramOut.Direction = ParameterDirection.Output;
cmdInsert.ExecuteScalar();
Sans renvoyer la valeur, comment puis-je affecter t il vaut "RetVal" ma variable _lookup.
Les procédures retournent l'état. Les fonctions renvoient des valeurs. –
Vous n'avez pas vraiment à retourner votre var de sortie, juste le réglage devrait être suffisant pour que la sortie soit remplie pour votre application – Kritner