Context.ExecuteForPrepare 속성

저장 프로시저가 준비 용도로 호출되는지 여부를 나타내는 값을 가져옵니다.

네임스페이스:  Microsoft.AnalysisServices.AdomdServer
어셈블리:  msmgdsrv(msmgdsrv.dll)

구문

‘선언
Public Shared ReadOnly Property ExecuteForPrepare As Boolean 
    Get
‘사용 방법
Dim value As Boolean 

value = Context.ExecuteForPrepare
public static bool ExecuteForPrepare { get; }
public:
static property bool ExecuteForPrepare {
    bool get ();
}
static member ExecuteForPrepare : bool
static function get ExecuteForPrepare () : boolean

속성 값

유형: Boolean
저장 프로시저가 준비 용도로 호출되면 true이고, 그렇지 않으면 false입니다.

주의

저장 프로시저 및 UDF(사용자 정의 함수)는 최종 조합된 셀 집합 또는 행 집합을 만드는 데 필요한 메타데이터를 확인하기 위해 "준비 모드"로 호출됩니다. "준비 모드"로 실행될 때 저장 프로시저 또는 UDF는 데이터를 반환하지 않아야 하지만, 일반적으로 반환되는 데이터 형식을 생성한 후에는 데이터를 즉시 반환해야 합니다.

저장 프로시저 및 UDF는 SafeToPrepareAttribute로 특성이 지정된 경우 "준비 모드"로만 호출할 수 있습니다. 저장 프로시저가 "준비 모드"로 호출되지만 저장 프로시저에 특성이 지정되지 않은 경우 예외가 발생합니다.

DataTables를 반환하는 UDF는 쿼리가 실행되기 전에 자동으로 준비됩니다.

다음 예제에서 저장 프로시저는 "준비 모드"일 때 데이터 테이블을 만든 후 즉시 반환됩니다.

[SafeToPrepare(true)]
public System.Data.DataTable GetPreparedTable()
{
    System.Data.DataTable results = new System.Data.DataTable();
    results.Columns.Add("A", typeof(int));
    results.Columns.Add("B", typeof(string));

    if (Context.ExecuteForPrepare)
    {
        // If preparing, return just the schema with no data
        return results;
    }

    //Otherwise return data
    object[] row = new object[2];
    row[0] = 1;
    row[1] = "A";
    results.Rows.Add(row);

    row[0] = 2;
    row[1] = "B";
    results.Rows.Add(row);

    return results;
}

참고 항목

참조

Context 클래스

Microsoft.AnalysisServices.AdomdServer 네임스페이스