大事な
Windows 8 および Windows Server 2012 以降では、RDS サーバー コンポーネントは Windows オペレーティング システムに含まれません (詳細については、Windows 8 と Windows Server 2012 の互換性クックブック を参照してください)。 RDS クライアント コンポーネントは、将来のバージョンの Windows で削除される予定です。 新しい開発作業ではこの機能を使用しないでください。現在この機能を使用しているアプリケーションを変更することを計画してください。 RDS を使用するアプリケーションは、WCF Data Serviceに移行する必要があります。
この例では、RDS DataControl オブジェクト Handler プロパティ を示します。 (詳細については、「DataFactory のカスタマイズ」を参照してください)。
パラメーター ファイルの次のセクション (Msdfmap.ini) がサーバー上にあることを前提としています。
[connect AuthorDataBase]
Access=ReadWrite
Connect="DSN=Pubs"
[sql AuthorById]
SQL="SELECT * FROM Authors WHERE au_id = ?"
コードは次のようになります。 SQL プロパティに割り当てられたコマンドは、AuthorById 識別子と一致し、作成者 Michael O'Leary の行を取得します。 Recordset プロパティDataControl オブジェクトは、コーディングの便宜上、切断された Recordset オブジェクトに割り当てられます。
'BeginHandlerVB
Public Sub Main()
On Error GoTo ErrorHandler
Dim dc As New DataControl
Dim rst As ADODB.Recordset
dc.Handler = "MSDFMAP.Handler"
dc.ExecuteOptions = 1
dc.FetchOptions = 1
dc.Server = "https://MyServer"
dc.Connect = "Data Source=AuthorDataBase"
dc.SQL = "AuthorById('267-41-2394')"
dc.Refresh 'Retrieve the record
Set rst = dc.Recordset 'Use another Recordset as a convenience
Debug.Print "Author is '" & rst!au_fname & " " & rst!au_lname & "'"
' clean up
If rst.State = adStateOpen Then rst.Close
Set rst = Nothing
Set dc = Nothing
Exit Sub
ErrorHandler:
' clean up
If Not rst Is Nothing Then
If rst.State = adStateOpen Then rst.Close
End If
Set rst = Nothing
Set dc = Nothing
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub
'EndHandlerVB