Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Patrick Philippot
Bonjour,
Dans notre base de données SQL Server, il y a une procédure stockée qui renvoie 2 valeurs.
S'il y a 2 valeurs retournées, je suppose donc qu'il ne s'agit pas d'une valeur de retour de la procédure mais de 2 paramètres out? Ou d'une valeur retournée par la procédure stockée et l'autre via un paramètre out?
Comment dois-je l'appeler et comment puis-je récupérer les valeurs renvoyées par cette procédure ?
Dans tous les cas, le processus se résume à ceci:
- Création d'un objet SqlCommand - Déclaration des paramètres *à passer à* la procédure dans l'objet Paramters de la SqlCommand - Déclaration des paramètres en retour (soit valeur de retour, soit paramètre out) - Appel - Récupération des valeurs en retour dans l'objet Parameters de la SqlCommand.
Code C# (extrait de la doc MS):
SqlCommand sampleCMD = new SqlCommand("SampleProc", nwindConn); //on dit que la commande est une procédure stockée sampleCMD.CommandType = CommandType.StoredProcedure;
// On dit qu'il y a une valeur de retour SqlParameter sampParm = sampleCMD.Parameters.Add("RETURN_VALUE", SqlDbType.Int); sampParm.Direction = ParameterDirection.ReturnValue;
// On déclare un paramètre "in" sampParm = sampleCMD.Parameters.Add("@InputParm", SqlDbType.NVarChar, 12); sampParm.Value = "Sample Value";
// On déclare un paramètre "out" // On fait cela poru chaque paramètre "out" (dans votre cas il peut y en avoir 2 - ou un seul // et une valeur de retour, je ne sais pas) sampParm = sampleCMD.Parameters.Add("@OutputParm", SqlDbType.NVarChar, 28); sampParm.Direction = ParameterDirection.Output;
// On récupère la valeur de retour et le paramètre "out" Console.WriteLine(" @OutputParm: {0}", sampleCMD.Parameters["@OutputParm"].Value); Console.WriteLine("RETURN_VALUE: {0}", sampleCMD.Parameters["RETURN_VALUE"].Value);
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Bonjour,
Dans notre base de données SQL Server, il y a une procédure stockée
qui renvoie 2 valeurs.
S'il y a 2 valeurs retournées, je suppose donc qu'il ne s'agit pas d'une
valeur de retour de la procédure mais de 2 paramètres out? Ou d'une valeur
retournée par la procédure stockée et l'autre via un paramètre out?
Comment dois-je l'appeler et comment puis-je récupérer les valeurs
renvoyées par cette procédure ?
Dans tous les cas, le processus se résume à ceci:
- Création d'un objet SqlCommand
- Déclaration des paramètres *à passer à* la procédure dans l'objet
Paramters de la SqlCommand
- Déclaration des paramètres en retour (soit valeur de retour, soit
paramètre out)
- Appel
- Récupération des valeurs en retour dans l'objet Parameters de la
SqlCommand.
Code C# (extrait de la doc MS):
SqlCommand sampleCMD = new SqlCommand("SampleProc", nwindConn);
//on dit que la commande est une procédure stockée
sampleCMD.CommandType = CommandType.StoredProcedure;
// On dit qu'il y a une valeur de retour
SqlParameter sampParm = sampleCMD.Parameters.Add("RETURN_VALUE",
SqlDbType.Int);
sampParm.Direction = ParameterDirection.ReturnValue;
// On déclare un paramètre "in"
sampParm = sampleCMD.Parameters.Add("@InputParm", SqlDbType.NVarChar, 12);
sampParm.Value = "Sample Value";
// On déclare un paramètre "out"
// On fait cela poru chaque paramètre "out" (dans votre cas il peut y en
avoir 2 - ou un seul
// et une valeur de retour, je ne sais pas)
sampParm = sampleCMD.Parameters.Add("@OutputParm", SqlDbType.NVarChar, 28);
sampParm.Direction = ParameterDirection.Output;
// On récupère la valeur de retour et le paramètre "out"
Console.WriteLine(" @OutputParm: {0}",
sampleCMD.Parameters["@OutputParm"].Value);
Console.WriteLine("RETURN_VALUE: {0}",
sampleCMD.Parameters["RETURN_VALUE"].Value);
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Dans notre base de données SQL Server, il y a une procédure stockée qui renvoie 2 valeurs.
S'il y a 2 valeurs retournées, je suppose donc qu'il ne s'agit pas d'une valeur de retour de la procédure mais de 2 paramètres out? Ou d'une valeur retournée par la procédure stockée et l'autre via un paramètre out?
Comment dois-je l'appeler et comment puis-je récupérer les valeurs renvoyées par cette procédure ?
Dans tous les cas, le processus se résume à ceci:
- Création d'un objet SqlCommand - Déclaration des paramètres *à passer à* la procédure dans l'objet Paramters de la SqlCommand - Déclaration des paramètres en retour (soit valeur de retour, soit paramètre out) - Appel - Récupération des valeurs en retour dans l'objet Parameters de la SqlCommand.
Code C# (extrait de la doc MS):
SqlCommand sampleCMD = new SqlCommand("SampleProc", nwindConn); //on dit que la commande est une procédure stockée sampleCMD.CommandType = CommandType.StoredProcedure;
// On dit qu'il y a une valeur de retour SqlParameter sampParm = sampleCMD.Parameters.Add("RETURN_VALUE", SqlDbType.Int); sampParm.Direction = ParameterDirection.ReturnValue;
// On déclare un paramètre "in" sampParm = sampleCMD.Parameters.Add("@InputParm", SqlDbType.NVarChar, 12); sampParm.Value = "Sample Value";
// On déclare un paramètre "out" // On fait cela poru chaque paramètre "out" (dans votre cas il peut y en avoir 2 - ou un seul // et une valeur de retour, je ne sais pas) sampParm = sampleCMD.Parameters.Add("@OutputParm", SqlDbType.NVarChar, 28); sampParm.Direction = ParameterDirection.Output;
// On récupère la valeur de retour et le paramètre "out" Console.WriteLine(" @OutputParm: {0}", sampleCMD.Parameters["@OutputParm"].Value); Console.WriteLine("RETURN_VALUE: {0}", sampleCMD.Parameters["RETURN_VALUE"].Value);
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Patrick
Merci.
-- Patrick
"Patrick Philippot" wrote:
Bonjour,
> Dans notre base de données SQL Server, il y a une procédure stockée > qui renvoie 2 valeurs.
S'il y a 2 valeurs retournées, je suppose donc qu'il ne s'agit pas d'une valeur de retour de la procédure mais de 2 paramètres out? Ou d'une valeur retournée par la procédure stockée et l'autre via un paramètre out?
> Comment dois-je l'appeler et comment puis-je récupérer les valeurs > renvoyées par cette procédure ?
Dans tous les cas, le processus se résume à ceci:
- Création d'un objet SqlCommand - Déclaration des paramètres *à passer à* la procédure dans l'objet Paramters de la SqlCommand - Déclaration des paramètres en retour (soit valeur de retour, soit paramètre out) - Appel - Récupération des valeurs en retour dans l'objet Parameters de la SqlCommand.
Code C# (extrait de la doc MS):
SqlCommand sampleCMD = new SqlCommand("SampleProc", nwindConn); //on dit que la commande est une procédure stockée sampleCMD.CommandType = CommandType.StoredProcedure;
// On dit qu'il y a une valeur de retour SqlParameter sampParm = sampleCMD.Parameters.Add("RETURN_VALUE", SqlDbType.Int); sampParm.Direction = ParameterDirection.ReturnValue;
// On déclare un paramètre "in" sampParm = sampleCMD.Parameters.Add("@InputParm", SqlDbType.NVarChar, 12); sampParm.Value = "Sample Value";
// On déclare un paramètre "out" // On fait cela poru chaque paramètre "out" (dans votre cas il peut y en avoir 2 - ou un seul // et une valeur de retour, je ne sais pas) sampParm = sampleCMD.Parameters.Add("@OutputParm", SqlDbType.NVarChar, 28); sampParm.Direction = ParameterDirection.Output;
// On récupère la valeur de retour et le paramètre "out" Console.WriteLine(" @OutputParm: {0}", sampleCMD.Parameters["@OutputParm"].Value); Console.WriteLine("RETURN_VALUE: {0}", sampleCMD.Parameters["RETURN_VALUE"].Value);
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Merci.
--
Patrick
"Patrick Philippot" wrote:
Bonjour,
> Dans notre base de données SQL Server, il y a une procédure stockée
> qui renvoie 2 valeurs.
S'il y a 2 valeurs retournées, je suppose donc qu'il ne s'agit pas d'une
valeur de retour de la procédure mais de 2 paramètres out? Ou d'une valeur
retournée par la procédure stockée et l'autre via un paramètre out?
> Comment dois-je l'appeler et comment puis-je récupérer les valeurs
> renvoyées par cette procédure ?
Dans tous les cas, le processus se résume à ceci:
- Création d'un objet SqlCommand
- Déclaration des paramètres *à passer à* la procédure dans l'objet
Paramters de la SqlCommand
- Déclaration des paramètres en retour (soit valeur de retour, soit
paramètre out)
- Appel
- Récupération des valeurs en retour dans l'objet Parameters de la
SqlCommand.
Code C# (extrait de la doc MS):
SqlCommand sampleCMD = new SqlCommand("SampleProc", nwindConn);
//on dit que la commande est une procédure stockée
sampleCMD.CommandType = CommandType.StoredProcedure;
// On dit qu'il y a une valeur de retour
SqlParameter sampParm = sampleCMD.Parameters.Add("RETURN_VALUE",
SqlDbType.Int);
sampParm.Direction = ParameterDirection.ReturnValue;
// On déclare un paramètre "in"
sampParm = sampleCMD.Parameters.Add("@InputParm", SqlDbType.NVarChar, 12);
sampParm.Value = "Sample Value";
// On déclare un paramètre "out"
// On fait cela poru chaque paramètre "out" (dans votre cas il peut y en
avoir 2 - ou un seul
// et une valeur de retour, je ne sais pas)
sampParm = sampleCMD.Parameters.Add("@OutputParm", SqlDbType.NVarChar, 28);
sampParm.Direction = ParameterDirection.Output;
// On récupère la valeur de retour et le paramètre "out"
Console.WriteLine(" @OutputParm: {0}",
sampleCMD.Parameters["@OutputParm"].Value);
Console.WriteLine("RETURN_VALUE: {0}",
sampleCMD.Parameters["RETURN_VALUE"].Value);
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
> Dans notre base de données SQL Server, il y a une procédure stockée > qui renvoie 2 valeurs.
S'il y a 2 valeurs retournées, je suppose donc qu'il ne s'agit pas d'une valeur de retour de la procédure mais de 2 paramètres out? Ou d'une valeur retournée par la procédure stockée et l'autre via un paramètre out?
> Comment dois-je l'appeler et comment puis-je récupérer les valeurs > renvoyées par cette procédure ?
Dans tous les cas, le processus se résume à ceci:
- Création d'un objet SqlCommand - Déclaration des paramètres *à passer à* la procédure dans l'objet Paramters de la SqlCommand - Déclaration des paramètres en retour (soit valeur de retour, soit paramètre out) - Appel - Récupération des valeurs en retour dans l'objet Parameters de la SqlCommand.
Code C# (extrait de la doc MS):
SqlCommand sampleCMD = new SqlCommand("SampleProc", nwindConn); //on dit que la commande est une procédure stockée sampleCMD.CommandType = CommandType.StoredProcedure;
// On dit qu'il y a une valeur de retour SqlParameter sampParm = sampleCMD.Parameters.Add("RETURN_VALUE", SqlDbType.Int); sampParm.Direction = ParameterDirection.ReturnValue;
// On déclare un paramètre "in" sampParm = sampleCMD.Parameters.Add("@InputParm", SqlDbType.NVarChar, 12); sampParm.Value = "Sample Value";
// On déclare un paramètre "out" // On fait cela poru chaque paramètre "out" (dans votre cas il peut y en avoir 2 - ou un seul // et une valeur de retour, je ne sais pas) sampParm = sampleCMD.Parameters.Add("@OutputParm", SqlDbType.NVarChar, 28); sampParm.Direction = ParameterDirection.Output;
// On récupère la valeur de retour et le paramètre "out" Console.WriteLine(" @OutputParm: {0}", sampleCMD.Parameters["@OutputParm"].Value); Console.WriteLine("RETURN_VALUE: {0}", sampleCMD.Parameters["RETURN_VALUE"].Value);
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr