web-dev-qa-db-ja.com

sys.database_files / sys.filegroups VS sys.sysfiles / sys.sysfilegroups

これらのカタログビューは、まったく同じデータを表示しているようです。同じことを示すように見える複数のシステムビューがあることのポイントは何ですか?

これが同じデータであることを証明する方法です:

select
    fil.name as [FileName],
    fg.name as GroupName
from sys.database_files fil
inner join sys.filegroups fg
on fil.data_space_id = fg.data_space_id

select 
    fil.name as [FileName],
    fg.groupname as GroupName
from sys.sysfiles fil
inner join sys.sysfilegroups fg
on fil.groupid = fg.groupid
4
anon

命名スキーム以外(およびドキュメントを参照する-例 sys.sysfilegroupsには大きな黄色の警告が表示されます )伝えることはあまりありません。 sys.all_objectsまたはsys.all_viewsにフラグを付けることを期待しますが、それらを区別するものはありません。

1
Aaron Bertrand