How to Script All Stored Procedures From a Database with PowerShell
PROBLEM: You need to script all stored procedures from a database. Each stored procedure needs to be on its own file so you can add them to a source control repository.
SOLUTION: The solution here is a variation of what we did for “How to Script All Tables From a Database with PowerShell”. The only difference in this solution is the use of the Get-SQLStoredProcedure function from the SQL Server PowerShell Extensions (SQLPSX).
CLEAR
$sServer = "TUIRA"
$sDatabase = "AdventureWorks"
$oSO = New-SqlScriptingOptions
$oSO.Permissions = $true
$oProcs = Get-SqlDatabase $sServer $sDatabase|Get-SqlStoredProcedure
foreach ($oProc in $oProcs){
$oP = $oProc.Name
$oS = $oProc.Schema
$DDL = Get-SqlScripter $oProc -scriptingOptions $oSO
Out-File -FilePath "E:AdventureWorks$oS`_$oP.sql" -InputObject $DDL
}