SQLXMLOLEDB 공급자는 ADO(ActiveX Data Objects)를 통해 Microsoft SQLXML 기능을 노출하는 OLE DB 공급자입니다. 그러나 공급자는 ADO의 "출력 스트림에 쓰기" 모드에서만 명령을 실행할 수 있습니다. SQLXMLOLEDB 공급자는 행 집합 공급자가 아닙니다. 명령을 실행할 때 ADO가 지정한 출력 스트림을 사용하도록 지시하는 adExecuteStream 플래그를 지정해야 합니다.
다음 예제에서는 adExecuteStream 플래그가 지정된 Execute 명령에 대한 구문을 보여줍니다.
Dim oTestCommand As New ADODB.Command
...
oTestCommand.Properties("Output Stream").Value = oTestStream
oTestCommand.Execute , , adExecuteStream
...
SQLXMLOLEDB 공급자별 속성
SQLXMLOLEDB 공급자는 다음 공급자별 연결 속성을 노출합니다.
| 연결 재산 |
기본값 (있는 경우) |
설명 |
|---|---|---|
| 데이터 공급자 | SQLXMLOLEDB에서 명령을 실행하는 OLE DB 공급자의 PROGID를 제공합니다. SQLXML 4.0 및 SQL Server 2005부터 이 공급자는 SQL Server Native Client 내에 포함됩니다. 따라서 이 속성 값은 "SQLNCLI11"로 제한됩니다. 자세한 내용은 SQL Server Native Client 프로그래밍을 참조하세요. |
SQLXMLOLEDB 공급자는 다음과 같은 공급자별 명령 속성을 노출합니다.
| 명령어 재산 |
기본값 (있는 경우) |
설명 |
|---|---|---|
| 기본 경로 | "" | 기본 파일 경로를 지정합니다. 기본 파일 경로는 XSL(XML Stylesheet Language) 또는 매핑 스키마 파일의 위치를 지정하는 데 사용됩니다. 기본 파일 경로는 XSL 또는 매핑 스키마 속성에 지정된 XSL 또는 매핑 스키마 파일의 상대 경로를 확인하는 데도 사용됩니다. 이 속성이 사용되는 예제는 XPath 쿼리 실행(SQLXMLOLEDB 공급자)을 참조하세요. |
| ClientSideXML | 거짓 | 행 집합을 XML로 변환하는 프로세스가 서버가 아닌 클라이언트에서 수행되도록 하려면 이 속성을 True로 설정합니다. 이는 성능 부하를 중간 계층으로 이동하려는 경우에 유용합니다. 이 속성이 사용되는 예제는 SQL 쿼리 실행(SQLXMLOLEDB 공급자) 또는 SQL 쿼리가 포함된 템플릿 실행(SQLXMLOLEDB 공급자)을 참조하세요. |
| 콘텐츠 형식 | 출력 콘텐츠 형식을 반환합니다. READ ONLY 속성입니다. 이 속성은 콘텐츠 형식(예: TEXT/XML, TEXT/HTML, image/jpeg 등)에 대한 정보를 브라우저에 제공합니다. 이 속성의 값은 본문으로 전송되는 문서의 MIME 형식(다목적 인터넷 메일 확장)을 포함하는 HTTP 헤더의 일부로 브라우저로 전송되는 콘텐츠 형식 필드가 됩니다. |
|
| 매핑 스키마 | 없음 | 클라이언트 애플리케이션이 매핑 스키마(XDR 또는 XSD)에 대해 XPath 쿼리를 실행하는 경우 이 속성은 매핑 스키마의 이름을 지정하는 데 사용됩니다. 지정된 경로는 상대 경로(xyz/abc/MySchema.xml) 또는 절대 경로(C:\MyFolder\abc\MySchema.xml)일 수 있습니다. 상대 경로를 지정하면 기준 경로 속성에 지정된 기본 경로가 상대 경로를 확인하는 데 사용됩니다. 기본 경로 속성에 지정된 경로가 없는 경우 상대 경로는 현재 디렉터리를 기준으로 합니다. 매핑 스키마 속성의 값을 지정할 때 로컬 디렉터리 경로 또는 URL(http://...)을 지정할 수 있습니다. URL을 지정하는 경우 프록시 서버를 통해 HTTP 및 HTTPS 서버에 액세스하도록 WinHTTP를 구성해야 합니다. Proxycfg.exe 유틸리티를 실행하여 이 작업을 수행할 수 있습니다. 자세한 내용은 MSDN 라이브러리의 "WinHTTP 프록시 구성 유틸리티 사용"을 참조하세요. 이 속성이 사용되는 예제는 XPath 쿼리 실행(SQLXMLOLEDB 공급자)을 참조하세요. |
| 네임스페이스 | 이 속성을 사용하면 네임스페이스를 사용하는 XPath 쿼리를 실행할 수 있습니다. 이 속성이 사용되는 예제는 네임스페이스를 사용하여 XPath 쿼리 실행(SQLXMLOLEDB 공급자)을 참조하세요. | |
| ss Stream Flags | 이 속성은 특정 유형의 보안 제한을 지정하는 데 사용됩니다. 예를 들어 파일에 대한 URL 참조 또는 파일의 절대 경로(예: 외부 사이트)를 허용하지 않을 수 있습니다. 또는 템플릿에서 쿼리를 허용하지 않을 수도 있습니다. 속성에 다음 값을 할당할 수 있습니다. 1 = STREAM_FLAGS_DISALLOW_URL 2 = STREAM_FLAGS_DISALLOW_ABSOLUTE_PATH 4 = STREAM_FLAGS_DISALLOW_QUERY 8 = STREAM_FLAGS_ DONTCACHEMAPPINGSCHEMA 16 = STREAM_FLAGS_DONTCACHETEMPLATE 32 = STREAM_FLAGS_DONTCACHEXSL 이러한 값에 대한 추가 정보는 다음 표에 나와 있습니다. |
|
| xml root | 이 속성은 결과 XML에 대 한 루트 태그를 정의 하는 데 사용 합니다. 예를 들어 데이터베이스에 대해 SQL 쿼리를 실행하고 결과 XML 문서에 루트 요소가 하나도 없는 경우 속성 값은 문서에 단일 루트 요소를 추가하는 데 사용됩니다. 이 속성을 사용하는 예제는 SQL 쿼리 실행(SQLXMLOLEDB 공급자)을 참조하세요. |
|
| xsl | 이 속성은 쿼리에서 반환된 XML 문서에 XSL 변환을 적용하려는 경우 XSL 파일 이름을 지정하는 데 사용됩니다. 지정된 경로는 상대 경로(xyz/abc/MyXSL.xsl) 또는 절대 경로(C:\MyFolder\abc\MyXSL.xsl)일 수 있습니다. 상대 경로를 지정하면 기준 경로 속성에 지정된 기본 경로가 상대 경로를 확인하는 데 사용됩니다. 기본 경로 속성에 지정된 경로가 없는 경우 상대 경로는 현재 디렉터리를 기준으로 합니다. 이 속성을 사용하는 예제는 XSL 변환 적용(SQLXMLOLEDB 공급자)을 참조하세요. |
다음 표에는 ss Stream Flags 속성 값에 대한 설명이 포함되어 있습니다.
| 속성 값 | 설명 |
|---|---|
| STREAM_FLAGS_DISALLOW_URL | 매핑 스키마 또는 XSL에는 URL이 허용되지 않습니다. |
| STREAM_FLAGS_DISALLOW_ABSOLTE_PATH | 매핑 스키마 또는 XSL에 대해 지정된 경로는 템플릿 자체의 기본 경로를 기준으로 해야 합니다. |
| STREAM_FLAGS_DISALLOW_QUERY | 쿼리는 템플릿에서 허용되지 않습니다. |
| STREAM_FLAGS_DONTCACHEMAPPINGSCHEMA | 매핑 스키마는 캐시되지 않습니다. 이 속성 값은 데이터베이스 스키마가 변경될 수 있는 데이터베이스 개발 단계에서 유용합니다. |
| STREAM_FLAGS_DONTCACHETEMPLATE | 템플릿은 캐시되지 않습니다. |
| STREAM_FLAGS_DONTCACHEXSL | XSL은 캐시되지 않습니다. |