SQLCMD - TSQL script to run all .sql scripts in a folder
Post date: Jan 9, 2014 9:03:57 AM
SQLCMD is a command line tool to run sql scripts. See SQLCMD @ Technet Microsoft
In the documentation of Sqlcmd it mentions:
- To increase performance, do as much in one sqlcmd session as you can, instead of in a series of sessions.
This script will run all scripts within a folder in a single sqlcmd session.
Copy the following code into a new file called main.sql.
main.sql::!! if exist files.sql del files.sql:!! for %f in (*.sql) do @(if not %f==main.sql echo :r %f &echo.GO)>> files.sql:r files.sql:!! del files.sql
Then execute the script using sqlcmd: (This will connect to your local machine, using AdvetureWorks as the initial database, using integrated security)
sqlcmd -E -d AdventureWorks -i main.sql
To execute against a remote server:
sqlcmd -E -S REMOTESERVERNAME -d AdventureWorks -i main.sql