다음을 통해 공유


XmlReadMode 열거형

정의

XML 데이터와 관계형 스키마를 DataSet으로 읽어오는 방법을 지정합니다.

public enum class XmlReadMode
public enum XmlReadMode
type XmlReadMode = 
Public Enum XmlReadMode
상속
XmlReadMode

필드

Auto 0

기본 읽기 모드입니다.

DiffGram 4

DiffGram을 읽고 DiffGram의 변경 내용을 DataSet에 적용합니다. Merge(DataSet) 작업과 의미론이 같습니다. Merge(DataSet) 작업에서처럼 RowState 값이 유지됩니다. ReadXml(XmlReader)의 출력을 DiffGram으로 사용해야 DiffGram을 사용한 WriteXml(Stream) 입력을 가져올 수 있습니다.

대상 DataSet에는 WriteXml이 DiffGram으로 호출되는 DataSet와 동일한 스키마가 있어야 합니다. 그렇지 않으면 DiffGram 병합 작업이 실패하고 예외가 throw 됩니다.

Fragment 5

FOR XML 쿼리를 실행하여 생성된 것과 같은 XML 단편을 SQL Server의 인스턴스에 대해 읽습니다. XmlReadModeFragment로 설정한 경우 기본 네임스페이스를 인라인 스키마로 읽습니다.

IgnoreSchema 2

인라인 스키마를 무시하고 데이터를 기존 DataSet 스키마로 읽어옵니다. 데이터가 기존 스키마와 일치하지 않으면 DataSet에 정의된 다른 네임스페이스의 데이터와 함께 삭제됩니다. 데이터가 DiffGram이면 IgnoreSchemaDiffGram과 같은 기능을 가집니다.

InferSchema 3

인라인 스키마를 무시하고 데이터로부터 스키마를 유추한 다음 해당 데이터를 로드합니다. DataSet에 스키마가 이미 있으면 새 테이블을 추가하거나 기존 테이블에 열을 추가하여 현재 스키마를 확장합니다. 유추된 테이블이 이미 있지만 네임스페이스가 다르거나 유추된 열 중에 기존 열과 충돌하는 열이 있으면 예외가 throw됩니다.

InferTypedSchema 6

모든 인라인 스키마를 무시하고 데이터로부터 강력한 형식의 스키마를 유추한 다음 해당 데이터를 로드합니다. 데이터에서 형식을 유추할 수 없으면 이 형식은 문자열 데이터로 해석됩니다. DataSet에 이미 스키마가 있으면 새 테이블을 추가하거나 기존 테이블에 열을 추가하여 현재 스키마를 확장합니다. 유추된 테이블이 이미 있지만 네임스페이스가 다르거나 유추된 열 중에 기존 열과 충돌하는 열이 있으면 예외가 throw됩니다.

ReadSchema 1

인라인 스키마를 읽고 데이터를 로드합니다. DataSet에 스키마가 이미 있으면 스키마에 새 테이블을 추가할 수 있지만 인라인 스키마의 테이블이 DataSet에 이미 있으면 예외가 throw됩니다.

설명

메서드의 매개 변수를 설정할 ReadMode 때 이 열거형의 멤버를 DataSet.ReadXml 사용합니다.

참고

Auto 모드는 명시적 옵션으로 설정하는 XmlReadMode 것보다 느려질 수 있습니다.

Auto 는 다음 작업을 가장 적절하게 수행합니다.

  • 데이터가 DiffGram인 경우 XML 읽기 모드를 로 DiffGram설정합니다.

  • 데이터 세트에 이미 스키마가 있거나 문서에 인라인 스키마가 포함된 경우 XML 읽기 모드를 로 ReadSchema설정합니다.

  • 데이터 세트에 스키마가 아직 없으며 문서에 인라인 스키마가 없는 경우 XML 읽기 모드를 InferSchema로 설정합니다.

적용 대상