sql >> Database teknologi >  >> RDS >> Sqlserver

Hvis jeg vil finde, hvad der refererer til et objekt i SQL Server, er søgning i syscomments omfattende?

Du har ikke angivet, hvilken version af SQL Server du bruger. Jeg går ud fra 2000, men hvis du er på 2005 eller senere, bør du se på sys.sql_modules katalogvisning og/eller OBJECT_DEFINITION() fungere. Som et hurtigt eksempel:

SELECT SCHEMA_NAME(schema_id) +'.'+ name
FROM sys.objects
WHERE OBJECT_DEFINITION(object_id) LIKE '%' + @Search + '%';

-- or

SELECT OBJECT_SCHEMA_NAME(object_id) +'.'+ OBJECT_NAME(object_id)
FROM sys.sql_modules
WHERE [definition] LIKE '%' + @Search + '%';

Du vil måske også tjekke følgende StackOverflow-tråd om RedGates nye og gratis SQL Search-værktøj og nogle alternative tilgange:

https://stackoverflow. com/questions/2187763/what-other-products-are-similar-to-redgates-sql-search/

Hvis du virkelig sidder fast på 2000, kan denne artikel, jeg skrev for næsten 10 år siden, stadig være relevant og hjælpsom (inklusive at imødekomme 4K-klumpproblemet, som Matt nævnte):

http://databases .aspfaq.com/database/how-do-i-find-a-stored-procedure-containing-text.html



  1. Postgresql:Gruppering med begrænsning på gruppestørrelse ved hjælp af vinduesfunktioner

  2. PL/SQL Hvordan får man X dag siden fra en dato som dato?

  3. Vis alle visninger på Oracle-databasen

  4. Hvorfor tillader MySQL at opdatere en NOT NULL kolonne til NULL?