Dis*_*ile 23 sql-server sql-server-2005 sql-server-2008
在SQL Server中:
INFORMATION_SCHEMA和sysobjects有什么区别?一个人提供的信息多于另一个,还是通常用于不同的事情?
sysobjects与sys.objects相同吗?如果没有,这些有什么区别?
Ran*_*der 34
INFORMATION_SCHEMA是SQL-92标准的一部分,因此它不太可能像sysobjects那样经常更改.
这些视图提供了SQL Server元数据的内部系统表独立视图.即使对底层系统表进行了重大更改,它们也能正常工作.
查询INFORMATION_SCHEMA总是好得多,因为它隐藏了sysobjects中对象的实现细节.
INFORMATION_SCHEMA是ANSI标准,在SQL Server实现中有点夸张.sysobjects特定于SQL Server.旧版本的SQL Server不支持它.
因此INFORMATION_SCHEMA更易于移植(适用于其他数据库)并且比sysobjects更容易使用.如果它有你需要的信息,我会去INFORMATION_SCHEMA.
sys.objects sysobjects只适用于SQL 2000的可移植性.