T-SQL Objekt-Definitionen durchsuchen
Bei Designänderungen Im MS Sql Server muss man alle eventuellen Seiteneffekte beachten, spricht man muss prüfen, welche Auswirkungen die Änderungen auf abhängige Objekte haben. Natürlich hat man alles gut dokumentiert, so dass man schnell herausfindet, welche Objekte eben abhängig von einem anderen sind.
Aber nur um ganz sicher zu gehen ;-), kann man die Objekt-Definitionen auch in der Datenbank per SQL durchsuchen lassen, schließlich muss der SQL Server es ja am besten wissen, wie was zusammenhängt.
Mit dem folgenden Script kann man das erledigt. Wie immer gibt es eine kleine Einschränkung, verschlüsselt angelegte Objekte, also die mit der Option ENCRYPTION, können natürlich nicht im Klartext durchsucht werden; CLR Assemblies erst recht nicht; ist logo.
SELECT OBJ.name, OBJ.xtype, PAR.name AS Parent,
COM.Text FROM sys.syscomments AS COM
INNER JOIN sys.sysobjects AS OBJ ON COM.id = OBJ.id LEFT JOIN sys.sysobjects AS PAR ON PAR.id = OBJ.parent_obj WHERE OBJ.xtype IN ('P ', 'TR', 'FN', 'V ')
AND COM.Text LIKE '%SalesPerson%' ORDER BY OBJ.xtype, OBJ.name, PAR.name
Ergebnis:

Hier noch eine zweite Variante, die das Systemview sys.sql_modules verwendet:
-- Objektdefinition nach Begriffen durchsuchen SELECT OBJSCH.name AS ObjectSchema, OBJ.name AS ObjectName,
OBJ.type_desc AS ObjectType, PARSCH.name AS ParentSchema, PAR.name AS ParentName, PAR.type_desc AS ParentType, MOD.definition, OBJ.create_date, OBJ.modify_date FROM sys.sql_modules AS MOD
INNER JOIN sys.objects AS OBJ ON MOD.object_id = OBJ.object_id INNER JOIN sys.schemas AS OBJSCH ON OBJ.schema_id = OBJSCH.schema_id
LEFT JOIN sys.objects AS PAR
ON PAR.object_id = OBJ.parent_object_id LEFT JOIN sys.schemas AS PARSCH ON PAR.schema_id = PAR.schema_id
WHERE MOD.definition LIKE '%SalesPerson%'
ORDER BY OBJ.name, PAR.name