この Microsoft Visual Basic アプリケーションでは、ADO を使用して Microsoft SQL Server インスタンスへの接続を確立した後、DiffGram を実行します。 このアプリケーションでは、DiffGram と XSD スキーマは 1 つのファイルに格納されており、 ファイルを指定して DiffGram を読み込みます。 「DiffGram の例 (SQLXML 4.0)」で説明されている 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 をテストするには
DiffGram の例から任意の DiffGram と対応する XSD スキーマを選んで、コンピューターのフォルダーにコピーします。
Visual Basic を開き、標準 EXE プロジェクトを作成します。
プロジェクトに次の参照を追加します。
Microsoft ActiveX Data Objects 2.8 Libraryツール ボックスで、CommandButton をクリックした後、フォームにボタンを描画します。
ボタンをダブルクリックしてコードを編集し、トピックで提供されるアプリケーション コードを追加します。
コードに DiffGram と XSD ファイルの名前を指定し、 接続文字列も適宜変更します。
アプリケーションを実行します。 実行結果は、実行する DiffGram によって変わります。
注