Finding Dependencies of Objects

  • Hi There,

    I need to do some clean up activities in my databases... So i intended to drop unwanted tables and views.

    for that I need to find, whether the table being used by any other objects ?

    How could I achieve it?

    thanks in advance

  • procs and views referencing your tables are only part of the puzzle;

    applications can have dependencies on those tables, and applications can reference tables that are never used.

    there's a handy chartabout how 45% of application improvements get added but are never used, and those improvements most likely reference objects int ehd atabase which need to exist, but are never used as well.

    you'll need to search applcation code in addition to the database.

    here's a handy script for you for the SQL side:

    SELECT

    depz.referenced_schema_name,

    depz.referenced_entity_name,

    objz.type_desc,

    object_schema_name(depz.referencing_id) As ReferencingSchema,

    object_name(depz.referencing_id) AS ReferencingObject,

    colz.name AS ColumnName

    FROM sys.sql_expression_dependencies depz

    INNER JOIN sys.objects objz ON depz.referenced_id=objz.object_id

    LEFT OUTER JOIN sys.columns colz ON objz.object_id = colz.object_id

    AND colz.column_id = referencing_minor_id

    --WHERE referencing_id = OBJECT_ID(N'MyTable');

    WHERE referenced_id = OBJECT_ID(N'EDLogDetail');

    --AND colz.name = 'EmployeeNumber'

    Lowell


    --help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!

  • As far as identifying application dependencies go, one technique is to run SQL server profiler while the application is being used (It's resource intensive, so ideally you'd want to run this in a test environment). If feasible, you can perhaps have someone run through all the major functions in a test environment, while profiler is running. Then inspect the traces to identify all the objects which the application uses. I can provide more details if you need.

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply