EXEC sp_helptext 'your procedure name';
Ciò evita il problema con l'approccio INFORMATION_SCHEMA in cui la procedura memorizzata viene interrotta se è troppo lunga.
Aggiornamento:David scrive che questo non è identico al suo sproc... forse perché restituisce le righe come "record" per preservare la formattazione? Se vuoi vedere i risultati in un formato più "naturale", puoi usare prima Ctrl-T (output come testo) e dovrebbe stamparlo esattamente come lo hai inserito. Se lo stai facendo nel codice, è banale fare un foreach per mettere insieme i tuoi risultati esattamente nello stesso modo.
Aggiornamento 2:questo fornirà alla fonte una "PROCEDURA CREATE" piuttosto che una "PROCEDURA ALTER" ma non conosco alcun modo per farla usare invece "ALTER". Una cosa piuttosto banale, però, vero?
Aggiornamento 3:vedere i commenti per ulteriori informazioni su come mantenere la DDL SQL (struttura del database) in un sistema di controllo del codice sorgente. Questa è davvero la chiave di questa domanda.