SQL Server 2012 : How to script all database stored procedures into separate .sql files?

20,843

Solution 1

Please check following SQL tutorial showing how to generate a separate script file for each stored procedure in a SQL Server database

The solution uses sp_Helptext stored procedure with SQL BCP command for generating create script for target SP and then create the export .sql file on the file system.

I hope it helps,

enter image description here

Additionally on generate script wizard, if you configure selection options as seen in below picture, you will get the sp name as the output script file name

enter image description here

Solution 2

As @Ivan_Starostin said:

Step one

enter image description here

Step two

enter image description here

Step three

enter image description here

Share:
20,843
Admin
Author by

Admin

Updated on July 18, 2020

Comments

  • Admin
    Admin almost 4 years

    I want to script all the stored procedures from SQL Server 2012 to Visual Studio 2012 as .sql files (in a different project). How do I do that? I want one .sql file for each stored procedure? I get the scripts using the Generate Scripts in Tasks option after right clicking DB in SQL Server 2012. However, the name of the .sql file is spname.StoredProcedure in each case. I want the name to be spname.sql. Again I don't want the file name to be database.spname.StoredProcedure, I want it to be just spname.sql

  • Eralper
    Eralper about 8 years
    Although the question titled as single sql file, when read carefully Anil wants one file for each stored procedure
  • Admin
    Admin about 8 years
    I want one .sql file for each stored procedure, and almost get it but the name of the files is spname.StoredProcedure, I want it to be spname.sql
  • Admin
    Admin about 8 years
    Is somebody going to answer my question? I don't want the file names to be dbname.spname.Stored Procedure. I want the names to be spname.sql.
  • Admin
    Admin about 8 years
    I tried the above way to script @Eralper , but I get an error -- The text for object 'spname' is encrypted.
  • Eralper
    Eralper about 8 years
    This is because that stored procedure named "spname" is encrypted. It is not possible to view contents of that procedure. I'm not sure if there is a way to see it. Can you see its content manually?
  • Eralper
    Eralper about 8 years
    Hi Anil, I missed the option "Single file per object" on "Files to generate". If you select that option and provide the path only below you will get what you expect.
  • Admin
    Admin about 8 years
    Yes using a third party app though, red gate @Eralper
  • Eralper
    Eralper about 8 years
    After your comment I tried the dbForge SQL Decryptor tool which worked great :) and free to download and use: devart.com/dbforge/sql/sqldecryptor
  • AxleWack
    AxleWack over 4 years
    Thanks! This did exactly what I was looking for!