この Microsoft Visual Basic アプリケーションでは、ADO を使用して Microsoft SQL Server のインスタンスへの接続を確立し、DiffGram を実行します。 このアプリケーションでは、DiffGram と XSD スキーマがファイルに格納されます。 アプリケーションは、指定されたファイルから DiffGram を読み込みます。 DiffGram の例で説明されている任意の DiffGram (および関連する XSD スキーマ) を使用できます。
これはサンプル アプリケーションのプロセスです。
conn オブジェクト (ADODB。接続) は、特定のサーバー上の SQL Server の実行中のインスタンスへの接続を確立します。
cmd オブジェクト (ADODB。コマンド) は、確立された接続で実行されます。
コマンド言語はDBGUID_MSSQLXMLに設定されます。
DiffGram は、ファイルからコマンド ストリーム (strmIn) にコピーされます。
コマンドの出力ストリームは StrmOut オブジェクト (ADODB) に設定されます。ストリーム) を使用して、返されたデータを受信します。
SQLOLEDB プロバイダーを使用している場合、既定では、Sqlxmlx.dllによって提供される Microsoft SQLXML 機能が取得されます。 SQLOLEDB プロバイダーで Sqlxml4.dll を使用するには、SQLOLEDB プロバイダー接続オブジェクトの 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 の例の 1 つから DiffGram と対応する XSD スキーマのいずれかをコピーします。
Visual Basic を開き、Standard EXE プロジェクトを作成します。
次の参照をプロジェクトに追加します。
Microsoft ActiveX Data Objects 2.8 Libraryツールボックスで、[ CommandButton] をクリックし、フォームにボタンを描画します。
ボタンをダブルクリックしてコードを編集し、トピックに記載されているアプリケーション コードを追加します。
DiffGram ファイル名と XSD ファイル名を指定するコードを編集します。 接続文字列も必要に応じて編集します。
アプリケーションを実行します。 実行の結果は、実行している DiffGram によって異なります。