sql >> Database >  >> Database Tools >> SSMS

Wilt u alle objecten scripten die afhankelijk zijn van een SQL Server-tabel

Probeer eerst deze link SQL-afhankelijkheden begrijpen

Ten tweede heb je meerdere opties om de afhankelijkheden te controleren

met behulp van sql_expression_dependencies tabel, voer de volgende query uit om de afhankelijkheid van X op Y te zien.

SELECT * 
FROM sys.sql_expression_dependencies 
WHERE referencing_id = OBJECT_ID('X')
    AND referenced_id = OBJECT_ID('Y')
    AND referenced_schema_name = 'dbo'
    AND referenced_entity_name = 'Y'
    AND referenced_database_name IS NULL
    AND referenced_server_name IS NULL;

met behulp van de syscomments tabel, slaat de syscomments-tabel van SQL Server de oorspronkelijke SQL-definitieverklaring op voor elke weergave, regel, standaard, trigger, CHECK- en DEFAULT-beperking en opgeslagen procedure in uw database. Dat is veel informatie! U kunt deze tabel opvragen om afhankelijke objecten weer te geven met behulp van een SQL-instructie in de volgende vorm

SELECT *
FROM syscomments 
INNER JOIN sysobjects sysobj ON syscomments.id = sysobj.id
WHERE charindex('your object to check', text) > 0 

met behulp van de sp_depends opgeslagen procedure, die informatie weergeeft over afhankelijkheden van databaseobjecten, zoals:de weergaven en procedures die afhankelijk zijn van een tabel of weergave, en de tabellen en weergaven waarvan de weergave of procedure afhankelijk is

EXEC sp_depends @objname = N'your object to check'


  1. COMMIT werkt niet in phpmyadmin (MySQL)

  2. Is er een manier om de kolomlijst in een SELECT * van #Temp_Table in SSMS uit te breiden?

  3. Hoe het ip-adres van de mySQL-server te achterhalen via phpmyadmin

  4. Hoe alle databases te exporteren met phpmyadmin