Étant donné une procédure stockée, je souhaite en extraire le paramètre.Comment puis-je extraire des paramètres d'une procédure stockée dans SQL Server 2005?
Comment puis-je faire cela dans .net?
Étant donné une procédure stockée, je souhaite en extraire le paramètre.Comment puis-je extraire des paramètres d'une procédure stockée dans SQL Server 2005?
Comment puis-je faire cela dans .net?
Vous pouvez exécuter la requête SQL suivante dans SQL Server 2005. Vous pouvez bien sûr appeler la même requête à l'aide de la classe SqlCommand
.
SELECT
p.name,
p.object_id,
pm.parameter_id,
pm.name AS parameter_name,
pm.system_type_id AS parameter_system_type_id,
pm.max_length AS parameter_max_length,
t.name AS type_name
FROM sys.procedures p
JOIN sys.parameters pm ON p.object_id = pm.object_id
JOIN sys.types t ON pm.system_type_id = t.system_type_id
WHERE p.name = 'sprocName'
Bien sûr, les procedures
, parameters
et types
vues système contiennent une autre procédure stockée et intéressante informations sur les paramètres ainsi. Cette requête est juste une sélection.
Vous devez utiliser le SqlCommandBuilder.DeriveParameter, qui est partagé (VB.NET) ou statique (C#) auquel vous passez la commande SqlCommand: DeriveParameter on MSDN. Vous devez simplement créer une SqlCommand, en définissant le nom de la procédure stockée, appelez cette méthode et consultez la propriété SqlCommand.Parameters.
Argh - vous me battez :-) Bonne réponse! –
Désolé pour ça ;-) –