2012-02-21 3 views

답변

4

OBJECT_ID은 시스템 기본 테이블에서 오브젝트를 고유하게 식별하는 데 사용됩니다.

sys.objects 메타 데이터보기에서 사용하는 sys.sysschobjs 기본 테이블의 기본 키이며 많은 다른 메타 데이터보기에 나타납니다. 예 : sys.partitions. 이러한 뷰를 조회하지 않으면 object_id은 다음과 같이 오브젝트 존재 확인을 사용할 때를 제외하고는별로 유용하지 않습니다.

IF OBJECT_ID('T', 'U') IS NULL 
    /*Table T does not exist or no permissions*/ 

스키마 범위 개체는 스키마 (예 : 테이블, 뷰, 저장 프로 시저)에 속한 개체입니다. MSDN 기사에서는 DDL 트리거에서 스키마가 아닌 범위 개체의 예를 제공합니다. 여전히 sys.sysschobjs에 저장이

CREATE TRIGGER dbo.SomeTrigger /*Will Fail*/ 
ON DATABASE 
FOR DROP_SYNONYM 
AS 
PRINT 'SomeTrigger' 

비 스키마 범위 개체 메타 데이터를 생성하지만 sys.objects보기에 표시되지 않을 때

스키마를 시도하고 지정하면 오류가 발생합니다.