sql serve 2005中的系统架构
sql server 2000中查询系统元数据的时候我们要通过很多系统表,例如sysobjects什么的,当然sql server中有很多系统存储过程,但是还是不能完全满足我们管理员的需求,所以只能查这些系统表,在sql server 2005中所有的系统表都被整合到了一个叫做sys的架构下,同时还有就是架构。
以下给一段范例代码,可以帮助大家在sql server 2005中查询出有哪些表引用了某张表,
--------------------------------------------------------------------------------
use adventureworks
go
--显示有哪些表引用了该对象
if object_id('dbo.ufn_listreferencingtables') <> 0
drop function dbo.ufn_listreferencingtables
go
create function dbo.ufn_listreferencingtables
(@referenced_table as varchar(200))
returns table as
return(
select schema_name(convert(int, objectpropertyex(fkeyid, 'schemaid')))
+ '.' + object_name(fkeyid)
as [referencing table]
from sys.sysreferences
where rkeyid = object_id(@referenced_table)
)
go
新闻热点
疑难解答