You can do this in a management studio. Right-click the desired database and select tasks → Generate scripts → go through the wizard. Then you can specify only stored procedures, etc.
You can also use the script as follows:
SET NOCOUNT ON DECLARE @Test TABLE (Id INT IDENTITY(1,1), Code VARCHAR(MAX)) INSERT INTO @Test (Code) SELECT 'IF object_ID(N''[' + schema_name(schema_id) + '].[' + Name + ']'') IS NOT NULL DROP PROCEDURE ['+ schema_name(schema_id) +' ].[' + Name + ']' + CHAR(13) + CHAR(10) + 'GO' + CHAR(13) +CHAR(10) + OBJECT_DEFINITION(OBJECT_ID) + CHAR(13) +CHAR(10) + 'GO' + CHAR(13) + CHAR(10) FROM sys.procedures WHERE is_ms_shipped = 0 DECLARE @lnCurrent INT, @lnMax INT DECLARE @LongName VARCHAR(MAX) SELECT @lnMax = MAX(Id) FROM @Test SET @lnCurrent = 1 WHILE @lnCurrent <= @lnMax BEGIN SELECT @LongName = Code FROM @Test WHERE Id = @lnCurrent WHILE @LongName <> '' BEGIN PRINT LEFT(@LongName,8000) SET @LongName = SUBSTRING(@LongName, 8001, LEN(@LongName)) END SET @lnCurrent = @lnCurrent + 1 END
You can also shift + click to select all stored procedures, and then you can right-click and script them into a file.
source share