ActiveConnection プロパティ

指定された Command オブジェクトや Recordset オブジェクトが現在属する Connection オブジェクトを示します。

設定値と戻り値

接続の定義、または Connection オブジェクト参照の定義からなる文字列型 String を設定または取得します。デフォルトは Null です。

解説

ActiveConnection プロパティは、指定された Command オブジェクトを実行したり、または指定された Recordset オブジェクトを開いたりするために使用する、開いている Connection オブジェクトを設定または取得するために使います。この引数に接続文字列を渡した場合、ADO は指定されたパラメータを使用して新しい接続を開きます。

Command

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

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

このプロパティに Nothing を設定すると、Command オブジェクトと現在の Connection との関連付けが解除され、プロバイダはデータ ソース上の関連するリソースをすべて解放します。その後に、Command オブジェクトに同じ 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 プロパティは、読み取り専用です。そのほかの Recordset オブジェクトでは、読み取り/書き込みが可能です。

このプロパティには有効な Connection オブジェクト、または有効な接続文字列を設定できます。この場合、プロバイダはその定義を使用して新しい Connection オブジェクトを作成し、接続を開きます。さらに、プロバイダはこのプロパティに新しい Connection オブジェクトを設定する場合があり、その場合には Connection オブジェクトにアクセスして拡張エラー情報を取得したり、あるいはほかのコマンドを実行したりできます。

Open メソッドの引数 ActiveConnection を使って Recordset オブジェクトを開くと、指定した引数が RecordsetActiveConnection プロパティにそのまま渡されます。

Recordset オブジェクトの Source プロパティに有効な Command オブジェクト変数を設定すると、Command オブジェクトの ActiveConnection の設定が RecordsetActiveConnection プロパティにそのまま渡されます。

対象

CommandRecordset