sql >> Databasteknik >  >> RDS >> Sqlserver

Fråga för att lista alla lagrade procedurer

Som Mike sa är det bästa sättet att använda information_schema . Så länge du inte är i huvuddatabasen kommer systemlagrade procedurer inte att returneras.

SELECT * 
  FROM DatabaseName.INFORMATION_SCHEMA.ROUTINES
 WHERE ROUTINE_TYPE = 'PROCEDURE'

Om du av någon anledning hade icke-systemlagrade procedurer i huvuddatabasen, kan du använda frågan (detta kommer att filtrera bort de MEST systemlagrade procedurerna):

SELECT * 
  FROM [master].INFORMATION_SCHEMA.ROUTINES
 WHERE ROUTINE_TYPE = 'PROCEDURE' 
   AND LEFT(ROUTINE_NAME, 3) NOT IN ('sp_', 'xp_', 'ms_')


  1. Utforska SQL Server 2016 Query Store GUI

  2. Hur får man skillnad på dagar/månader/år (dateradiff) mellan två datum?

  3. PHP-kod för att konvertera en MySQL-fråga till CSV

  4. En översikt över volymnivåreplikering för PostgreSQL med DRBD