Execute21 メソッド (RDS)
要求を実行し、ADO 2.1 で使用する ADO レコードセットを作成します。
重要
Windows 8 および Windows Server 2012 から、RDS サーバー コンポーネントが Windows オペレーティング システムに含まれなくなりました (詳細については、Windows 8 および Windows Server 2012 の互換性クックブックを参照してください)。 RDS クライアント コンポーネントは、今後のバージョンの Windows で削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 RDS を使用するアプリケーションを WCF Data Service に移行する必要があります。
構文
object.Execute21(ConnectionString As String, HandlerString As String, QueryString As String, lMarshalOptions As Long, Properties, TableId, lExecuteOptions As Long, pParameters)
パラメーター
ConnectionString
実行のために要求が送信される OLE DB プロバイダーに接続するために使用される文字列。 HandlerString を使用してハンドラーを指定すると、接続文字列を編集または置換できます。
HandlerString
この文字列では、この実行で使用されるハンドラーを識別します。 文字列には 2 つの部分が含まれています。 最初の部分には、使用されるハンドラーの名前 (ProgID) が含まれています。 文字列の 2 番目の部分には、ハンドラーに渡される引数が含まれています。 引数文字列の解釈方法は、ハンドラー固有です。 2 つの部分は、文字列内のコンマの最初のインスタンスで区切られます (ただし、引数文字列には追加のコンマを含めることができます)。 引数は省略可能です。
QueryString
接続文字列で識別される OLE DB プロバイダーでサポートされるコマンド言語のコマンド。 SQL ベースのプロバイダーの場合、Transact-SQL コマンド ステートメントが含まれている可能性がありますが、SQL 以外のプロバイダー (MSDataShape など) の場合、これは Transact-SQL クエリ ステートメントではない可能性があります。
また、ハンドラーが使用されている場合 (ハンドラーを使用することを強くお勧めします)、ハンドラーによって、ここで指定した値を変更または置き換えることができます。 たとえば、ハンドラーでは通常、QueryString を .ini ファイルのクエリ文字列に置き換えます。 既定では、Msdfmap.ini ファイルが使用されます。
lMarshalOptions
返される行セットまたはレコードセットのマーシャリング オプションを設定するために使用します。
TableID
VT_EMPTY または VT_BSTR のいずれかのバリアント型。 この値が VT_EMPTY 型の場合、無視されます。 VT_BSTR 型の場合、ここで指定した値を使用し、adCmdTableDirect を使用してレコードセットが作成され、QueryString パラメーターは無視されます。
lExecuteOptions
実行オプションのビットマスク:
1 = ReadOnlyレコードセットは、adLockReadOnly を使用して開かれます。
2 = NoBatch レコードセットは、adLockOptimistic を使用して開かれます。
4 = AllParamInfoSupplied 呼び出し元は、すべてのパラメーターのパラメーター情報が pParameters で提供されることを保証します。
8 = GetInfo クエリのパラメーター情報は、OLE DB プロバイダーから取得され、pParameters パラメーターで返されます。 クエリは実行されず、レコードセットは返されません。
16 = GetHiddenColumns レコードセットは、adLockBatchOptimistic を使用して開かれ、非表示の列がレコードセットに含まれます。
ReadOnly、NoBatch、GetHiddenColumns は相互に排他的なオプションですが、これらを複数設定してもエラーではありません。 複数のオプションを設定した場合、GetHiddenColumns が他のすべてのオプションよりも優先され、その後に ReadOnly が続きます。 オプションを指定しない場合、既定では、adLockBatchOptimistic を使用してレコードセットが開かれますが、非表示の列はレコードセットに含まれません。
pParameters
パラメーター定義の安全な配列を含むバリアント。 lExecuteOptions で GetInfo オプションが指定された場合、このパラメーターは、OLE DB プロバイダーから取得したパラメーター定義を返すために使用されます。 それ以外の場合、このパラメーターは空である可能性があります。
注釈
HandlerString パラメーターには null を指定できます。 この場合の動作は、RDS サーバーの構成方法によって異なります。 ハンドラー文字列 "MSDFMAP.handler" は、Microsoft 提供のハンドラー (Msdfmap.dll) を使用する必要があることを示します。 ハンドラー文字列 "MASDFMAP.handler,sample.ini" は、Msdfmap.dll ハンドラーを使用する必要があり、引数 "sample.ini" をハンドラーに渡す必要があることを示します。 MSDFMAP.dll では、この引数を、sample.ini を使用して接続およびクエリ文字列を確認する方向として解釈します。
注意
Execute21 メソッドは、Execute メソッド (RDS) の 1 つのバージョンです。 Execute メソッドを使用して ADO 2.1 と通信する必要がある場合、代わりに Execute21 メソッドを呼び出すことができます。 ADO 2.5 以降の Execute メソッドの機能は、ADO 2.1 の同じメソッドに対して提供される機能のスーパーセットです。