There are many cases where a DBA needs to perform a task against all databases in a SQL Server instance. In order to avoid the process of just changing a part of the statement or switching to the target database and executing the T-SQL statement each time, there are some options that can help you.
One option is the undocumented stored procedure “sp_MSforeachdb” which executes the given T-SQL statements against all databases within a SQL Server instance.
Example of Executing T-SQL Statements Against All Databases in SQL Server
Let’s see an example. In this example we want to find the physical location of all database files in a SQL Server instance.
In this case we can execute the below command:
EXECUTE master.sys.sp_MSforeachdb 'USE [?]; SELECT DB_NAME() as DBName,[name],[filename] FROM sysfiles'
The above command will execute the encapsulated T-SQL statement against all databases within the SQL Server instance.
Here’s the sample output:
A second option is to run the below command that queries the sys.databases catalog and dynamically builds the individual T-SQL statements for all databases:
SELECT 'SELECT '''+[Name]+''' AS DBName,[name],[filename] FROM '+[name]+'..sysfiles' FROM sys.databases; GO
You can then execute these statements one by one and thus have more control:
* Note: Massively executing T-SQL statements against all databases is something that should be avoided because it is easy to do a mistake and affect all databases. Always carefully test your T-SQL scripts on Test environments. Always take backups of your data.
- How to Patch a SQL Server Failover Cluster
- How to Patch a Standalone SQL Server Instance
- How to Add a Database to a SQL Server Availability Group Using T-SQL
- Top 10 SQL Server DBA Daily Tasks List
- The “Public” Database Role in SQL Server
- The SQL Server Browser Service and UDP Port 1434
- The Maximum Number of Concurrent Connections Setting in SQL Server
- There is no SQL Server Failover Cluster Available to Join
- Encrypting a SQL Server Database Backup
- Learn Azure Data Lake Analytics by Example
- Azure Cosmos DB: Learn by Example
- How to Create an Azure SQL Server Virtual Machine
- How to Backup a SQL Server Database from On-Premises to Azure Storage
- … all our SQL Server Administration Articles
Featured Database Security and Administration Tool: DBA Security Advisor
DBA Security Advisor: Secure your SQL Server instances by scanning multiple instances against a rich set of security checks, and by getting recommendations and remediation steps.
Did you find this article useful and interesting? Feel free to leave your comment!
Subscribe to our newsletter and stay up to date with our latest articles on SQL Server and related technologies!
Check out our latest software releases! All our software tools have 30-day Trial Versions which are free to download.
Rate this article:
Reference: SQLNetHub.com (https://www.sqlnethub.com)