Quick and dirty way to run a batch over and over

Published On: 2011-10-17By:

Everyone has their favorite way or running a block of code over and over again.  If you have to run an entire batch over and over again there is nothing as quick and easy as using the “GO n” syntax.  When you put a number after the GO batch separator SQL Server Management Studio (as well as SQLCMD) will run that entire batch however many times that you have specified.

Recently I needed to create some dummy data in a table, so instead of writing a loop that counted the number of times the loop ran, I simply used code like this.

CREATE TABLE SampleData
(id int identity(1,1),
SomeData varchar(100))
go
insert into SampleData
(SomeData)
values
('This is my sample data')
go 100000

When run, the batch with the insert statement ran 100,000 times generating all the data that I needed with just 7 extra keystrokes.

Denny

SQL Server Days 2011

Contact the Author | Contact DCAC

One response to “Quick and dirty way to run a batch over and over”

  1. JanNovak says:

    Hi Denny.
    Thanks for a great post.

    I just want to add my experience. GO n or using WHILE for inserting data is much slower then using set based solution:
    [CODE]
    INSERT INTO SampleData(SomeData)
    SELECT TOP 100000 ‘This is my sample data’
    FROM
    [master].[dbo].[spt_values] t1
    CROSS JOIN
    [master].[dbo].[spt_values] t2
    [/CODE]

    Have a nice day
    Jan

Video

Globally Recognized Expertise

As Microsoft MVP’s and Partners as well as VMware experts, we are summoned by companies all over the world to fine-tune and problem-solve the most difficult architecture, infrastructure and network challenges.

And sometimes we’re asked to share what we did, at events like Microsoft’s PASS Summit 2015.

Awards & Certifications

Microsoft Partner       Insights Sccess Award    Technology Headlines Award    Golden Bridge Gold Award    CIO Review Top 20 Azure Solutions Providers    VMWare Partner
Microsoft Certified Master    Microsoft MVP
Share via