ADO를 사용하여 DiffGram 실행(SQLXML 4.0)

이 Microsoft Visual Basic 응용 프로그램은 ADO를 사용하여 Microsoft SQL Server 인스턴스에 대한 연결을 설정하고 DiffGram을 실행합니다. 이 응용 프로그램에서 DiffGram 및 XSD 스키마는 파일에 저장됩니다. 응용 프로그램은 지정된 파일에서 DiffGram을 로드합니다. DiffGram 예에서 설명된 모든 DiffGram 및 관련 XSD 스키마를 사용할 수 있습니다.

다음은 예제 응용 프로그램의 프로세스입니다.

  • conn 개체(ADODB.Connection)가 특정 서버에서 실행 중인 SQL Server 인스턴스에 연결합니다.

  • 설정된 연결에서 cmd 개체(ADODB.Command)가 실행됩니다.

  • 명령 언어가 DBGUID_MSSQLXML로 설정됩니다.

  • DiffGram이 파일에서 명령 스트림(strmIn)으로 복사됩니다.

  • 명령의 출력 스트림이 반환된 데이터를 수신하기 위해 StrmOut 개체(ADODB.Stream)로 설정됩니다.

  • SQLOLEDB 공급자를 사용하면 기본적으로 Sqlxmlx.dll에서 제공되는 Microsoft SQLXML 기능을 사용할 수 있게 됩니다. SQLOLEDB 공급자를 통해 Sqlxml4.dll을 사용하려면 SQLOLEDB 공급자 Connection 개체에서 SQLXML Version 속성을 SQLXML.4.0으로 설정해야 합니다.

  • 명령(DiffGram)이 실행됩니다.

예제 응용 프로그램 코드는 다음과 같습니다.

[!참고]

코드에서 연결 문자열에 SQL Server 인스턴스의 이름을 지정해야 합니다.

Private Sub Command1_Click()
  Dim cmd As New ADODB.Command
  Dim conn As New ADODB.Connection
  Dim strmOut As New ADODB.Stream
  Dim strmIn As New ADODB.Stream
      
  'Open a connection to SQL Server.
  conn.Provider = "SQLOLEDB"
  conn.Open "server=SqlServerName; database=tempdb; Integrated Security=SSPI; "
  conn.Properties("SQLXML Version") = "SQLXML.4.0"
  Set cmd.ActiveConnection = conn
  strmIn.Open
  strmIn.Charset = "UTF-8"
  strmIn.LoadFromFile "C:\SomeFilePath\SampleDiffGram.xml"
  strmIn.Position = 0
  Set cmd.CommandStream = strmIn
    
  strmOut.Open
  cmd.Properties("Output Stream").Value = strmOut
  cmd.Properties("Output Encoding").Value = "UTF-8"
    
  cmd.Dialect = "{5d531cb2-e6ed-11d2-b252-00c04f681b71}"
  cmd.Properties("Mapping Schema") = "C:\SomeFilePath\SampleDiffGram.xml"
  cmd.Execute , , adExecuteStream
  strmOut.Position = 0
  Set cmd = Nothing
  strmOut.Charset = "UTF-8"
  strmOut.SaveToFile "C:\DropIt.txt", adSaveCreateOverWrite
  strmOut.Close
  Set strmOut = Nothing
  
End Sub

DiffGram을 테스트하려면

  1. DiffGram 예에 있는 DiffGrams 및 해당 XSD 스키마 중 하나를 사용자 컴퓨터의 폴더로 복사합니다.

  2. Visual Basic을 열고 표준 EXE 프로젝트를 만듭니다.

  3. 프로젝트에 다음 참조를 추가합니다.

    Microsoft ActiveX Data Objects 2.8 Library
    
  4. 도구 상자에서 CommandButton을 클릭한 다음 폼에 단추를 그립니다.

  5. 단추를 두 번 클릭하여 코드를 편집하고 이 항목에서 제공된 응용 프로그램 코드를 추가합니다.

  6. 코드에 DiffGram 및 XSD 파일 이름을 지정합니다. 연결 문자열 역시 적절하게 편집합니다.

  7. 응용 프로그램을 실행합니다. 실행 결과는 사용자가 실행하는 DiffGram에 따라 다릅니다.