sp_msforeachtable e sp_msforeachdb
Per eseguire un dato comando su ogni tabella di un database o per ogni database di una particolare istanza di SQL Server esistono due comodissime stored procedure, seppur non documentate ufficialmente:
- sp_msforeachtable
- sp_msforeachdb
Entrambe richiedono un parametro @command con, per l’appunto, l’istruzione da eseguire. Se l’istruzione stessa deve essere “parametrizzata” con il nome della tabella o del db il “carattere jolly” da utilizzare è ‘?’.
Per qualche dettaglio in più rimando ad un articolo di databasejournal.com:
SQL Server Undocumented Stored Procedures sp_MSforeachtable and sp_MSforeachdb
Per rimanere in tema di stored procedure non documentate cito anche sp_mshelpcolumns che vuole come parametro il nome della tabella da analizzare.
Queste SP funzionano sia su SQL Server 2000 che su SQL Server 2005.










