Automatically create scripts for Tables & Stored Procedures in SQL Server 2008?

Posted on 2014-10-10
Last Modified: 2014-10-10
I know when making modifications to Tables or SP's, you generally right click on the entity and select Modify. There is also a menu option in the popup menu that says "Script Table as..." or "Script Stored Procedure as..." and then the sub-menu item of "Create In...". When you select "Create In...", it creates an editable SQL script. Is it possible to automate that for each Table/SP rather than doing it one at a time for each one?

Question by:BlakeMcKenna
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
  • +1
LVL 49

Expert Comment

by:Vitor Montalvão
ID: 40372950
Yes. Instead of right-click on the table, try it on the database, then chose Tasks / Generate Scripts...
Now you can chose which objects you want to be scripted. Just follow the wizard.
LVL 65

Expert Comment

by:Jim Horn
ID: 40372963
Not that I'm aware of in SQL 2008, but using Visual Studio 2010 you can create a SQL Data Project
Visual Studio 2010, SQL Server Database Project
Then go to Schema Compare, point to any database as a source, then point to any other database as a destination, and you can with one button-click script out all objects from source to destination.
LVL 26

Expert Comment

ID: 40373040
What do you mean by automate? Do you want to do this at some interval and save the output in some files? Is it for some kind of source control purpose?
Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.


Author Comment

ID: 40373293
Let's say you right click on a Table Object and the menu pops up. You select "Script Table as"/"Create To"/"File". That will produce SQL Code to a file of your choice. Instead of doing that for each object, is there a way to be able to do that for all Objects within a specific Database?

It's essentially scripting out all the Tables, Stored Procedures, etc. into a File, Clibboard, etc.

Author Comment

ID: 40373324
Hi Jim,

I think I've almost got it. My problem is that there are no other DB's I can choose as a destination and I don't have "Create" privileges to create one.
LVL 26

Accepted Solution

Zberteoc earned 500 total points
ID: 40373430
In Management Studio Object Explorer:

Right Click on the database name > Tasks > Generate Scripts > Next > Leave on "Select Entire Database and all database objects" (if you choose the other oprion you can specify group and/or individual objects) > Next > Leave on "Save to File" and "Single File", choose a file name and location > Next Next> Finish or Close.


You may want to go into Advance settings before you save that file and under the table preferences make sure the indexes, unique keys, triggers are set to True.

Author Closing Comment

ID: 40373618
Wow...that was awesome!!!!

Thanks so much!
LVL 65

Expert Comment

by:Jim Horn
ID: 40373645
>Right Click on the database name > Tasks > Generate Scripts > Next > ...

Very handy... thanks for posting this.

Author Comment

ID: 40373732
It sure helped me!!!

Featured Post

Free eBook: Backup on AWS

Everything you need to know about backup and disaster recovery with AWS, for FREE!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

After restoring a Microsoft SQL Server database (.bak) from backup or attaching .mdf file, you may run into "Error '15023' User or role already exists in the current database" when you use the "User Mapping" SQL Management Studio functionality to al…
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question