Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Recuperare a livello di codice l'origine della stored procedure di SQL Server identica all'origine restituita dalla GUI di SQL Server Management Studio?

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.