sp_OAGetProperty(Transact-SQL)

적용 대상:SQL Server

OLE 개체의 속성 값을 가져옵니다.

Transact-SQL 구문 표기 규칙

구문

  
sp_OAGetProperty objecttoken , propertyname   
    [ , propertyvalue OUTPUT ]  
    [ , index...]   

인수

objecttoken
sp_OACreate 사용하여 이전에 만든 OLE 개체의 개체 토큰입니다.

propertyname
반환할 OLE 개체의 속성 이름입니다.

propertyvalueOUTPUT
반환된 속성 값입니다. 지정된 경우 해당 데이터 형식의 지역 변수여야 합니다.

속성이 OLE 개체를 반환하는 경우 속성 값은 int 데이터 형식의 지역 변수여야 합니다. 개체 토큰은 지역 변수에 저장되며 이 개체 토큰은 다른 OLE Automation 저장 프로시저와 함께 사용할 수 있습니다.

속성이 단일 값을 반환하는 경우 속성 값에 대한 지역 변수를 지정하여 지역 변수의 속성 값을 반환하거나 속성 값을 클라이언트에 단일 열 단일 행 결과 집합으로 반환하는 propertyvalue를 지정하지 않습니다.

속성이 배열을 반환할 때 propertyvalue가 지정된 경우 NULL로 설정됩니다.

propertyvalue가 지정되었지만 속성이 값을 반환하지 않으면 오류가 발생합니다. 속성이 두 개 이상의 차원을 가진 배열을 반환하는 경우 오류가 발생합니다.

인덱스
인덱스 매개 변수입니다. 지정한 경우 인덱 스가 적절한 데이터 형식의 값이어야 합니다.

일부 속성에는 매개 변수가 있습니다. 이러한 속성을 인덱싱된 속성이라고 하며 매개 변수를 인덱스 매개 변수라고 합니다. 속성에는 여러 인덱스 매개 변수가 있을 수 있습니다.

참고 항목

이 저장 프로시저의 매개 변수는 이름이 아닌 위치로 지정됩니다.

반환 코드 값

OLE Automation 개체에서 반환된 HRESULT의 정수 값인 0(성공) 또는 0이 아닌 숫자(실패)입니다.

HRESULT 반환 코드에 대한 자세한 내용은 OLE Automation 반환 코드 및 오류 정보를 참조하세요.

결과 집합

속성이 하나 또는 두 개의 차원의 배열을 반환하는 경우 배열은 결과 집합으로 클라이언트에 반환됩니다.

  • 1차원 배열은 배열에 요소가 있는 만큼 많은 열을 가진 단일 행 결과 집합으로 클라이언트에 반환됩니다. 즉, 배열이 열로 반환됩니다.

  • 2차원 배열은 배열의 첫 번째 차원에 요소가 있고 배열의 두 번째 차원에 있는 요소만큼 많은 행이 있는 결과 집합으로 클라이언트에 반환됩니다. 즉, 배열은 (열, 행)으로 반환됩니다.

속성 반환 값 또는 메서드 반환 값이 배열 이면 sp_OAGetProperty 또는 sp_OAMethod 결과 집합을 클라이언트에 반환합니다. (메서드 출력 매개 변수는 배열일 수 없습니다.) 이러한 절차는 배열의 모든 데이터 값을 검사하여 결과 집합의 각 열에 사용할 적절한 SQL Server 데이터 형식 및 데이터 길이를 확인합니다. 특정 열의 경우 이러한 프로시저는 해당 열의 모든 데이터 값을 나타내는 데 필요한 데이터 형식과 길이를 사용합니다.

하나의 열에 있는 모든 데이터 값이 같은 데이터 형식을 공유하는 경우에는 해당 데이터 형식이 전체 열에 대해 사용됩니다. 한 열의 데이터 값들이 여러 다른 데이터 형식을 가질 경우 전체 열의 데이터 형식이 다음 표를 기준으로 선택됩니다.

int float money 날짜/시간 varchar nvarchar
int int float money varchar varchar nvarchar
float float float money varchar varchar nvarchar
money money money money varchar varchar nvarchar
날짜/시간 varchar varchar varchar 날짜/시간 varchar nvarchar
varchar varchar varchar varchar varchar varchar nvarchar
nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar

설명

sp_OAMethod 사용하여 속성 값을 가져올 수도 있습니다.

사용 권한

sysadmin 고정 서버 역할의 멤버 자격이 필요하거나 이 저장 프로시저에 대한 직접 실행 권한이 필요합니다. Ole Automation ProceduresOLE 자동화와 관련된 시스템 프로시저를 사용하려면 구성을 사용하도록 설정해야 합니다.

예제

A. 지역 변수 사용

다음 예제에서는 이전에 만든 SQLServer 개체의 속성을 가져오 HostName 고 지역 변수에 저장합니다.

DECLARE @property varchar(255);  
EXEC @hr = sp_OAGetProperty @object, 'HostName', @property OUT;  
IF @hr <> 0  
BEGIN  
   EXEC sp_OAGetErrorInfo @object  
    RETURN  
END  
PRINT @property;  

B. 결과 집합 사용

다음 예제에서는 이전에 만든 SQLServer 개체의 속성을 가져오 HostName 고 결과 집합으로 클라이언트에 반환합니다.

EXEC @hr = sp_OAGetProperty @object, 'HostName';  
IF @hr <> 0  
BEGIN  
   EXEC sp_OAGetErrorInfo @object  
    RETURN  
END;  

참고 항목

OLE 자동화 저장 프로시저(Transact-SQL)
OLE 자동화 샘플 스크립트