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 も参照ください。


ActiveConnection

(PWS4 IIS4 IIS5)
ActiveConnection — 指定した Command オブジェクト、Recordset オブジェクト、または Record オブジェクトが、現在どの Connection オブジェクトに属するかを示します。

設定値と戻り値

接続が切断された場合は接続定義を格納する文字列型 (String) の値、また、接続が開かれている場合はカレントの Connection オブジェクトを格納したバリアント型 (Variant) の値を設定します。また、値の取得も可能です。既定は Null オブジェクトへの参照です。

説明

指定された Command オブジェクトを実行する Connection オブジェクト、または指定された Recordset を開くための Connection オブジェクトを探すには、ActiveConnection プロパティを使います。

Command オブジェクトでは、ActiveConnection プロパティは読み取り/書き込み可能になります。

このプロパティを開いている Connection オブジェクトまたは有効な接続文字列に設定する前に、Command オブジェクトで Execute メソッドを呼び出すと、エラーが発生します。

Microsoft Visual Basic ActiveConnection プロパティに Nothing を設定すると、現在の Connection から Command オブジェクトが分離され、プロバイダはデータ ソース上の関連するリソースを解放します。この設定の後で、Command オブジェクトを同じまたは別の Connection オブジェクトに関連付けることができます。プロバイダによっては、先にプロパティに Nothing を設定することなく、ある Connection から別の Connection にプロパティ設定を変更できます。

Command オブジェクトの Parameters コレクションにプロバイダから提供されるパラメータが含まれる場合、ActiveConnection プロパティを Nothing またはほかの Connection オブジェクトに設定すると、コレクションの内容は消去されます。手動で Parameter オブジェクトを作成し、それを使って Command オブジェクトの Parameters コレクションの値を入力すると、ActiveConnection プロパティを Nothing またはほかの Connection オブジェクトに設定しても、Parameters コレクションはそのまま変わりません。

Command オブジェクトに関連付けられた Connection オブジェクトを閉じると、ActiveConnection プロパティは Nothing に設定されます。このプロパティに閉じられた Connection オブジェクトを設定するとエラーが発生します。

Recordset

開いている Recordset オブジェクト、または Source プロパティが有効な Command オブジェクトに設定されている Recordset オブジェクトの場合、ActiveConnection プロパティは読み取り専用になっています。それ以外の場合は読み取り/書き込み可能です。

このプロパティには、有効な Connection オブジェクトまたは有効な接続文字列を設定できます。この場合、プロバイダはこの定義を使って新規 Connection オブジェクトを作成し、接続を開きます。加えて、プロバイダがこのプロパティに新規 Connection オブジェクトを設定することがあります。これは、Connection オブジェクトにアクセスして詳細エラー情報があるかどうかを調べたり、ほかのコマンドを実行できるようにするためです。

Recordset オブジェクトを開くときに Open メソッドの ActiveConnection 引数を使用する場合、ActiveConnection プロパティはこの引数値を継承します。

Recordset オブジェクトの Source プロパティに有効な Command オブジェクト変数を設定した場合、Recordset の ActiveConnection プロパティは、Command オブジェクトの ActiveConnection プロパティの設定値を継承します。

RDS での使用 クライアント側の Recordset オブジェクトでこのプロパティを使用する場合、このプロパティに設定できるのは、接続文字列、または Nothing (Microsoft Visual Basic または Visual Basic Scripting Edition の場合) だけです。
Record

Record オブジェクトを閉じるとこのプロパティは読み取り/書き込み可能になり、接続文字列または開かれた Connection オブジェクトに対する参照が格納されます。Record オブジェクトを開くとこのプロパティは読み取り専用になり、開かれた Connection オブジェクトに対する参照が格納されます。

URL から Record オブジェクトを開くと、Connection オブジェクトが無条件で作成されます。既存の開かれた Connection オブジェクトで Record を開くには、Connection オブジェクトをこのプロパティに割り当てるか、Open メソッドを呼び出す際のパラメータとして Connection オブジェクトを使用します。既存の Record や Recordset から開いた Record は、Record オブジェクトや Recordset オブジェクトの Connection オブジェクトに自動的に関連付けられます。

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


Command オブジェクト

データ ソースに対して実行する、特定のコマンドの定義です。

* ActiveConnection
* CommandText
* CommandTimeout
* CommandType
* Dialect
* Name
* Prepared
* State
* Cancel
* CreateParameter
* Execute


ADO

ADO

ADO を使用すると、OLE DB プロバイダを通してデータベースサーバー上のデータへのアクセスと操作を行うための、クライアントアプリケーションを作成することができます。ADO の主な利点は、使用が簡単で、高速に動作し、メモリのオーバーヘッドが小さく、ディスクの使用量が少ないことです。ADO では、クライアント/サーバー アプリケーションおよび Web ベース アプリケーションを構築するための重要な機能がサポートされています。

* Commandオブジェクト
* Connectionオブジェクト
* Errorオブジェクト
* Errorコレクション
* Fieldオブジェクト
* Fieldsコレクション
* Parameterオブジェクト
* Parametersコレクション
* Propertyオブジェクト
* Propertiesオブジェクト
* Recordオブジェクト
* Recordsetオブジェクト
* Streamオブジェクト


Session_OnStart

(PWS4 IIS4 IIS5)
Session_OnStart — サーバーが新しいセッションを作成したときに発生します。

Sub Session_OnStart
. . .
End Sub

説明

このスクリプトは、要求されたページの実行前に処理されます。したがって、Session_OnStart イベントは、セッション全体の変数を設定するタイミングとして適しています。変数は、ページへのアクセスが始まる前に設定されるためです。 Session_OnStart イベント スクリプトでは、すべての組み込みオブジェクト (Application、 ObjectContext、 Request、Response、Server、および Session) が利用でき、参照できます。

Session_OnStart イベントに Redirect メソッドまたは End メソッドの呼び出しが含まれている場合も、Session オブジェクトは処理されますが、サーバーは Global.asa ファイルのスクリプト、および Session_OnStart イベントを発生させたファイルのスクリプトの処理を停止します。

Session_OnStart イベントで Redirect メソッドを呼び出し、ユーザーが常に特定の Web ページでセッションを始めるようにする処理などを行うことができます。ユーザーがアプリケーションに入ると、サーバーはそのユーザーに対してセッションを作成し、Session_OnStart イベントスクリプトを処理します。このイベントのスクリプトでは、ユーザーが開いたページが開始ページかどうかを調べ、開始ページではない場合に Response.Redirect メソッドを呼び出してユーザーを開始ページに移動させることができます。次の例は、以上の内容を示しています。

例1.Session_OnStartの例

1
2
3
4
5
6
7
8
9
10
11
<script RUNAT=Server LANGUAGE=VBScript>
Sub Session_OnStart

  startPage = "/MyApp/StartHere.asp"
  currentPage = Request.ServerVariables("SCRIPT_NAME")

  If strcomp(currentPage,startPage,1) then
    Response.Redirect(startPage)
  End If
End Sub
</script>

上の例は、cookie をサポートしているブラウザでのみ動作します。非 cookie ブラウザは SessionID cookie を返さないため、ユーザーがページを要求するたびにサーバーは新しいセッションを作成します。したがって、要求ごとにサーバーは Session_OnStart スクリプトを処理し、ユーザーを開始ページに移動させます。上記のスクリプトを使う場合、そのサイトの開始ページには、cookie が利用可能なブラウザの使用が必要なことをユーザーに知らせるメッセージを掲示することをお勧めします。