I am trying to find the list of tables that make up any particular view in SQL server 2000. The information schema - VIEW_TABLE_USAGE would be the best tool, if only the sysdepends table worked! When I use the schema I get some but not all of my views.
Has anyone got a solution, prefably one without cursors, that can identitfy the source tables for a view?
I have used the following SQL, but unfortunately it gives too many results:
SELECT VIEWS.name AS VIEW_NAME,
TABLES.name AS TABLE_NAME,
VIEW_SQL.text
FROM sysobjects VIEWS
INNER JOIN
syscomments VIEW_SQL
ON VIEWS.id = VIEW_SQL.id
INNER JOIN
sysobjects TABLES
ON VIEW_SQL.text LIKE '%.' + TABLES.name + '%'
WHERE (VIEWS.xtype = 'V')
AND (TABLES.xtype = 'U')
ORDER BY VIEWS.name, TABLES.name
JustinLook for SQL Dependency Viewer from Red-Gate software. It's a free download (though I think it's still beta).
http://www.red-gate.com/products/sql_dependency_viewer/
Regards,
hmscott|||Look for SQL Dependency Viewer from Red-Gate software. It's a free download (though I think it's still beta).
http://www.red-gate.com/products/sql_dependency_viewer/
Regards,
hmscott
Thanks, I have tried this tool and it should be good when its complete, however I actually want the names of the tables rather then a graph view. I am using the table names to provide some meta data for a database I am developing.
Regards
Justin
Wednesday, March 21, 2012
Identyfying which tables have gone into a view
Labels:
database,
identyfying,
microsoft,
mysql,
oracle,
particular,
schema,
server,
sql,
tables,
view,
view_table_usage
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment