• stewartc-708166 (9/8/2010)


    Microsoft recommends the use of the INFORMATION_SCHEMA views in lieu of system tables

    Got a reference that states that?

    sys.columns, sys.tables, etc are not system tables. They're catalog views and they exist so that MS can change the underlying system tables (which aren't even visible) without breaking code.

    From Books Online (http://msdn.microsoft.com/en-us/library/ms174365%28v=SQL.100%29.aspx):

    Catalog views return information that is used by the SQL Server Database Engine. We recommend that you use catalog views because they are the most general interface to the catalog metadata and provide the most efficient way to obtain, transform, and present customized forms of this information. All user-available catalog metadata is exposed through catalog views.

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass