devxlogo

SQL Stored Procedure to Run Single Command on All Tables

There is an undocumented stored procedure that you can use to run a single command on all tables in a database. It is very useful when doing routine jobs on all the tables. For example, re-indexing the tables would be done like this:

 sp_MSforeachtable [@command1 =] 'sql_command'    [, [@replacechar =] 'replacement_character']    [, [@command2 =] 'sql_command']    [, [@command3 =] 'sql_command']    [, [@whereand =] 'sql_command']    [, [@precommand =] 'sql_command']    [, [@postcommand =] 'sql_command']  Typical Call  sp_Msforeachtable "DBCC DBREINDEX ('?')",     @precommand = 'print ''Indexing ...''',   @postcommand = 'print ''Completed ...'''

Enjoy and use this with care. It will do any command on all the tables.

Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.

See also  Seven Service Boundary Mistakes That Create Technical Debt

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.