这些目录视图似乎显示了完全相同的数据。有多个系统视图来显示相同的东西有什么意义呢?
以下是我如何证明这是相同的数据:
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发布于 2011-09-01 01:37:23
几乎总是向后兼容。通常是为了最终用户兼容性,但也是为了内部目的。
我发誓我在本周早些时候读过一篇文章,其中提到了一个旧的视图,可能是sysfiles,在SQL2005开发期间已经删除了99%,但是最后的1%被证明是很难/有风险的。
通常,针对脚本中任何系统表/视图的最新版本,它们更有可能在后续版本中仍然存在。
发布于 2011-09-01 04:45:24
除了命名方案(以及查阅文档--例如sys.sysfilegroups有一个黄色的警告)之外,您没有什么可以知道的。您可能希望在sys.all_objects或sys.all_views中有一些标志,但是没有什么能区分它们。
https://dba.stackexchange.com/questions/5283
复制相似问题