나는 OBJECT_ID
의 사용을 시도하고 MSDN에서 the following entry 찾을거야 ". 스키마 범위 개체의 데이터베이스 개체 식별 번호를 돌려"OBJECT_ID가 SQL Server에서 수행하는 작업은 무엇입니까?
을
스키마 범위 개체 란 무엇입니까? 내가 처음보다 혼란스러워하는 것 같아.
나는 OBJECT_ID
의 사용을 시도하고 MSDN에서 the following entry 찾을거야 ". 스키마 범위 개체의 데이터베이스 개체 식별 번호를 돌려"OBJECT_ID가 SQL Server에서 수행하는 작업은 무엇입니까?
을
스키마 범위 개체 란 무엇입니까? 내가 처음보다 혼란스러워하는 것 같아.
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
보기에 표시되지 않을 때
스키마를 시도하고 지정하면 오류가 발생합니다.