Execute

(PWS4 IIS4 IIS5)
Execute — CommandText プロパティまたは CommandStream プロパティで指定されたクエリ、SQL ステートメント、またはストアド プロシージャを実行します。

戻り値

Recordset オブジェクトへの参照、ストリーム、または Nothing を返します。

説明

Command オブジェクトで Execute メソッドを使用すると、オブジェクトの CommandText プロパティまたは CommandStream プロパティで指定したクエリが実行されます。

結果は Recordset に返される (既定) か、バイナリ情報のストリームとして返されます。バイナリストリームを取得するには、Options に adExecuteStream を指定し、Command.Properties(“Output Stream”) を設定してストリームを与えます。結果を受け取るには、ADO Stream オブジェクト、または IIS Response オブジェクトなどの別のストリーム オブジェクトを指定することができます。adExecuteStream が指定されている Execute を呼び出す前にストリームが指定されなかった場合は、エラーが発生します。Execute から値が返されるときのストリームの位置は、プロバイダによって決まっています。

結果を返すことが目的ではないコマンド (SQL UPDATE クエリなど) では、プロバイダは Nothing を返します。いくつかのアプリケーション言語では、Recordset が必要とされない場合に、この戻り値を無視できます。

Execute では、CommandType が adCmdStoredProc、adCmdTable、または adCmdTableDirect のときに CommandStream に値を指定すると、エラーが発生します。

クエリにパラメータが存在する場合、Execute メソッドの呼び出し時にパラメータ値を渡して置き換えない限り、Command オブジェクトの現在のパラメータ値が使用されます。Execute メソッドを呼び出す際に、パラメータのいくつかの新しい値を省略して、パラメータのサブセットを上書きすることができます。パラメータを指定する順番は、メソッドで渡される順番と同じです。たとえば、4 つまたはそれ以上のパラメータがあり、1 番目と 4 番目のパラメータのみに新しい値を渡すには、Parameters 引数に、Array(var1,,,var4) のように指定します。


CreateParameter

(PWS4 IIS4 IIS5)
CreateParameter — 指定したプロパティを使って新規 Parameter オブジェクトを作成します。

Set parameter = command.CreateParameter (Name, Type, Direction, Size, Value)

戻り値

Parameter オブジェクトを返します。

パラメータ

Name 省略可能です。Parameter オブジェクト名を含む文字列型 (String) の値を指定します。
Type 省略可能です。Parameter オブジェクトのデータ型を DataTypeEnum 値で指定します。
Direction 省略可能です。Parameter オブジェクトのデータ型を ParameterDirectionEnum 値で指定します。
Size 省略可能です。パラメータ値の最大長を文字数またはバイト数で指定する長整数型 (Long) の値を指定します。
Value 省略可能です。Parameter オブジェクトの値を指定するバリアント型 (Variant) の値を指定します。

説明

CreateParameter メソッドを使って、名前、種類、方向、サイズ、および値を指定して新規 Parameter オブジェクトを作成します。引数に指定した値は、対応する Parameter プロパティに書き込まれます。

このメソッドを実行しても、Parameter オブジェクトは、Command オブジェクトの Parameters コレクションに自動的に追加されません。このため、追加のプロパティを設定することができます。Parameter オブジェクトをコレクションに追加するときに、プロパティ値の妥当性が確認されます。

Type 引数で可変長データ型を指定した場合、Parameters コレクションにオブジェクトを追加する前に、Size 引数を引き渡すか、または Parameter オブジェクトの Size プロパティを設定する必要があります。それ以外の場合はエラーが発生します。

Type 引数に数値型 (adNumeric または adDecimal) を指定する場合は、同時に NumericScale と Precision の各プロパティも設定する必要があります。


Cancel

(PWS4 IIS4 IIS5)
Cancel — 非同期メソッド呼び出しのうち、保留中のものの実行をキャンセルします。

設定値と戻り値

Cancel メソッドを使って、非同期メソッド (adAsyncConnect、adAsyncExecute、または adAsyncFetch のオプションを指定して呼び出すメソッド) の呼び出しの実行を中止します。

説明

次の表は、各種のオブジェクトで Cancel メソッドを使用したときに中止される操作です。

object に指定するオブジェクト 最後の非同期呼び出しが中止されるメソッド
Command Execute
Connection Execute または Open
Record CopyRecord、DeleteRecord、MoveRecord、または Open
Recordset Open
Stream Open

State

(PWS4 IIS4 IIS5)
State — 対象になるすべてのオブジェクトについて、そのオブジェクトが開いているか、または閉じているかを示します。

object.State

戻り値

ObjectStateEnum 値となる長整数型 (Long) の値を返します。既定値は adStateClosed です。

説明

State プロパティを使えば、オブジェクトの現在の状態をいつでも調べることができます。

オブジェクトの State プロパティの値は組み合わせることができます。たとえば、ステートメントが実行中のときは、プロパティの値は adStateOpen と adStateExecuting の組み合わせになります。

State プロパティは読み取り専用です。


Prepared

(PWS4 IIS4 IIS5)
Prepared — コンパイルされたバージョンのコマンドを、実行前に保存するかどうかを示します。

設定値と戻り値

ブール型 (Boolean) の値を設定します。また、値の取得も可能です。True の場合、コマンドの準備が必要であることを示します。

説明

Command オブジェクトの最初の実行前に、CommandText プロパティで指定したクエリの準備済み (またはコンパイル済み) バージョンをプロバイダで保存するには、Prepared プロパティを使います。その場合、最初のコマンド処理が遅くなることがありますが、プロバイダでコマンドをコンパイルしておけば、その後の実行ではコンパイル済みバージョンを使えるので、結果的にパフォーマンス面で有利です。

プロパティが False の場合、プロバイダはコンパイル済みバージョンを作成せずに、直接 Command オブジェクトを実行します。

プロバイダがコマンドの準備をサポートしていない場合に、このプロパティに True を設定すると、直ちにエラーが返されることがあります。エラーが返されない場合は、コマンドを準備する要求が無視され、Prepared プロパティに False が設定されます。


Name

(PWS4 IIS4 IIS5)
Name — オブジェクトの名前を示します。

設定値と戻り値

オブジェクトの名前を示す文字列型 (String) の値を設定します。また、値の取得も可能です。

説明

Name プロパティを使って、Command、Field、Parameter、または Property オブジェクト名を設定または取得します。

値は Command オブジェクトでは読み取り/書き込み可能になり、Property オブジェクトでは読み取り専用になります。

Field オブジェクトの場合、Name は一般には読み取り専用です。ただし、Record の Fields コレクションに追加された新規 Field オブジェクトの場合、Field の Value プロパティが指定されていて、データ プロバイダが Fields コレクションの Update メソッドを呼び出して新規 Field の追加に成功した場合に限り、Name は読み取り/書き込み可能になります。

Parameters コレクションに追加されていない Parameter オブジェクトでは、Name プロパティの属性は読み取り/書き込み可能になっています。追加された Parameter オブジェクトとその他のオブジェクトでは、Name プロパティは読み取り専用です。名前はコレクション内で一意でなくてもかまいません。

オブジェクトの Name プロパティは、その序数参照で取得することができ、その後は、その名前で直接オブジェクトを参照できます。たとえば、 rstMain.Properties(20).Name で Updatability を取得すると、次からはこのプロパティを rstMain.Properties(“Updatability”) で参照できます。


Dialect

(PWS4 IIS4 IIS5)
Dialect — CommandText プロパティまたは CommandStream プロパティの文法を示します。このプロパティは、プロバイダが文字列またはストリームの解析に使用する構文と一般規則を定義します。

設定値と戻り値

Dialect プロパティには、コマンド テキストまたはストリームの文法を表す有効な GUID が含まれます。Dialect プロパティの既定値は、{C8B521FB-5CF3-11CE-ADE5-00AA0044773D} です。この値は、プロバイダがコマンドテキストまたはストリームの解釈方法を選択する必要があることを示します。

説明

ユーザーがこのプロパティの値を読み取るときには、ADO によりプロバイダへ問い合わせられることなく、現在 Command オブジェクトに格納されている値の文字列表記が返されます。

ユーザーが Dialect プロパティを設定すると、GUID が確認され、指定した値が有効な GUID でなければエラーが発生します。Dialect プロパティでサポートされている GUID 値については、プロバイダのマニュアルを参照してください。


CommandType

(PWS4 IIS4 IIS5)
CommandType — Command オブジェクトの型を示します。

設定値と戻り値

1 つ以上の CommandTypeEnum 値を設定します。また、値の取得も可能です。
注意 CommandType では、CommandTypeEnum に adCmdFile または adCmdTableDirect を使用しないでください。これらの値は、Recordset の Open メソッドと Requery メソッドのオプションとしてのみ使用することができます。

説明

CommandText プロパティの評価を最適化するには、CommandType プロパティを使用します。

CommandType プロパティの値が adCmdUnknown (既定値) の場合、パフォーマンスが低下することがあります。これは、CommandText プロパティの型が SQL ステートメント、ストアドプロシージャ、またはテーブル名のいずれかであるかを調べるためにプロバイダを呼び出す必要があるためです。使っているコマンドの種類が明らかな場合は、 CommandType プロパティを設定することにより、該当するコードに直接移動することができます。CommandType プロパティが CommandText プロパティのコマンドの種類と一致しない場合に Execute メソッドを呼び出すと、エラーが発生します。


CommandTimeout

(PWS4 IIS4 IIS5)
CommandTimeout — 実行しようとしたコマンドを中止して、エラーを発生させるまでの待機時間を示します。

設定値と戻り値

コマンド実行が完了するまでの待機時間を秒単位で示す長整数型 (Long) の値を設定します。また、値の取得も可能です。既定値は 30 です。

説明

ネットワーク トラフィックやサーバーの過負荷により実行が遅れている Execute メソッドの呼び出しの取り消しを行えるようにするには、Connection オブジェクトまたは Command オブジェクトの CommandTimeout プロパティを使用します。コマンドの実行が完了する前に CommandTimeout プロパティで設定された時間が経過すると、エラーが発生してコマンドが取り消されます。プロパティに 0 を設定すると、コマンド実行が完了するまで無限に待機します。コードを書き込むプロバイダとデータ ソースが CommandTimeout 機能をサポートしていることを確認してください。

Connection オブジェクトの CommandTimeout 設定は、同じ Connection 上の Command オブジェクトの CommandTimeout 設定に影響しません。つまり、Command オブジェクトの CommandTimeout プロパティは、Connection オブジェクトの CommandTimeout の値を継承しません。

Connection オブジェクトでは、CommandTimeout プロパティは Connection が開かれた後も、読み取り/書き込みが可能です。

Requery も参照ください。


CommandText

(PWS4 IIS4 IIS5)
CommandText — プロバイダに対して発行するコマンド文字列を示します。

設定値と戻り値

SQL ステートメント、テーブル名、相対 URL、またはストアド プロシージャの呼び出しなど、プロバイダのコマンドを含む文字列型 (String) の値を設定します。また、値の取得も可能です。既定値は “” (長さ 0 の文字列) です。

説明

Command オブジェクトで表されるコマンド テキストを設定または取得するには、CommandText プロパティを使用します。通常は SQL ステートメントを使いますが、ストアドプロシージャの呼び出しなど、プロバイダが認識する、ほかの種類のコマンドステートメントでもかまいません。SQL ステートメントは、特定の文法またはプロバイダのクエリプロセッサがサポートするバージョンである必要があります。

Command オブジェクトの Prepared プロパティに True が設定されていて、CommandText プロパティの設定時に開いている接続に Command オブジェクトがバインドされている場合、Execute メソッドまたは Open メソッドを呼び出すと、クエリ (つまり、プロバイダが保存するコンパイルされたクエリ) が準備されます。

CommandType プロパティの設定値によっては、CommandText プロパティが変更される場合があります。CommandText プロパティはいつでも読み出すことができ、ADO がコマンド実行中に使う実際のコマンド テキストの参照も可能です。

ファイルやディレクトリなどのリソースを指定する相対 URL を設定したり値を取得するには、CommandText プロパティを使います。リソースは、絶対 URL で明示的に指定された位置や、開かれた Connection オブジェクトで暗黙的に指定された位置に対して相対的です。

注意 http スキーマを使用している URL は、Microsoft OLE DB Provider for Internet Publishing を自動的に呼び出します。

Requery も参照ください。