Accès aux valeurs des paramètres de sortie dans ADO.NET
Ce guide montre comment récupérer facilement les valeurs des paramètres de sortie à partir de procédures stockées dans ADO.NET. Le processus implique ces étapes clés :
Définissez le paramètre de sortie : Créez un objet SqlParameter
en définissant sa propriété Direction
sur ParameterDirection.Output
. Assurez-vous que le nom du paramètre et le type de données (SqlDbType
) correspondent précisément à ceux définis dans votre procédure stockée (par exemple, @ID INT OUT
).
Ajouter aux paramètres de commande : Ajoutez cet objet SqlParameter
à la collection Parameters
de votre objet SqlCommand
.
Exécuter la procédure stockée : Utilisez SqlCommand.ExecuteNonQuery()
pour exécuter la procédure stockée.
Récupérer la valeur de sortie : Après l'exécution, accédez à la valeur du paramètre de sortie à l'aide de la propriété Value
de votre objet SqlParameter
. N'oubliez pas de convertir la valeur récupérée dans le type de données correct pour éviter les erreurs.
Voici un exemple de code pratique illustrant ce processus :
// Assuming a stored procedure 'sproc' with an output parameter '@ID' // and a connection string 'connectionString' using (SqlConnection conn = new SqlConnection(connectionString)) using (SqlCommand cmd = new SqlCommand("sproc", conn)) { SqlParameter outputParam = new SqlParameter("@ID", SqlDbType.Int) { Direction = ParameterDirection.Output }; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(outputParam); conn.Open(); cmd.ExecuteNonQuery(); int retrievedId = (int)outputParam.Value; //Retrieve and cast the output integer value conn.Close(); }
La valeur de sortie est facilement disponible à partir de l'objet SqlParameter
lui-même. Il est crucial de s'assurer que le type de données dans votre SqlParameter
correspond à la définition du paramètre de sortie de la procédure stockée. Une conversion précise du type de données lors de la récupération est essentielle pour éviter les exceptions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!