जैसा कि माइक ने कहा, सबसे अच्छा तरीका है information_schema
. का उपयोग करना . जब तक आप मास्टर डेटाबेस में नहीं हैं, सिस्टम संग्रहीत कार्यविधियाँ वापस नहीं की जाएँगी।
SELECT *
FROM DatabaseName.INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE = 'PROCEDURE'
यदि किसी कारण से आपके पास मास्टर डेटाबेस में गैर-सिस्टम संग्रहीत कार्यविधियाँ थीं, तो आप क्वेरी का उपयोग कर सकते हैं (यह अधिकांश सिस्टम संग्रहीत कार्यविधियों को फ़िल्टर कर देगा):
SELECT *
FROM [master].INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE = 'PROCEDURE'
AND LEFT(ROUTINE_NAME, 3) NOT IN ('sp_', 'xp_', 'ms_')