Close メソッド (ADO)

開いているオブジェクトと依存するすべてのオブジェクトを閉じます。

構文

  
object.Close  

注釈

Close メソッドを使用して、ConnectionRecordRecordset、または Stream オブジェクトを閉じて、関連システム リソースを解放します。 オブジェクトを閉じても、メモリからは削除されません。プロパティの設定を変更し、後でもう一度開くことができます。 オブジェクトをメモリから完全に削除するには、オブジェクトを閉じてから、オブジェクト変数を Nothing に設定します (Visual Basic の場合)。

Connection

Close メソッドを使用して Connection オブジェクトを閉じると、接続に関連付けられているアクティブな Recordset オブジェクトも閉じられます。 閉じる Connection オブジェクトに関連付けられている Command オブジェクトは保持されますが、Connection オブジェクトには関連付けされなくなります。つまり、その ActiveConnection プロパティは Nothing に設定されます。 また、Command オブジェクトの Parameters コレクションは、プロバイダー定義のパラメーターからクリアされます。

後で Open メソッドを呼び出して、同じデータ ソースまたは別のデータ ソースへの接続を再確立できます。 Connection オブジェクトが閉じている間、データ ソースへの開いている接続を必要とするメソッドを呼び出すとエラーが発生します。

接続で開いている Recordset オブジェクトがある間に Connection オブジェクトを閉じると、すべての Recordset オブジェクトで保留中の変更がロールバックされます。 トランザクションの進行中に Connection オブジェクトを明示的に閉じると (Close メソッドを呼び出すと)、エラーが発生します。 トランザクションの進行中に Connection オブジェクトがスコープから外れると、ADO はトランザクションを自動的にロールバックします。

Recordset、Record、Stream

Close メソッドを使用して、RecordsetRecord、または Stream オブジェクトを閉じると、関連付けられているデータと、この特定のオブジェクトを介してデータに対して持っていた排他アクセス権が解放されます。 後で Open メソッドを呼び出して、同じ属性または変更した属性を使用してオブジェクトを再度開くことができます。

Recordset オブジェクトが閉じている間に、ライブ カーソルを必要とするメソッドを呼び出すと、エラーが発生します。

即時更新モードの間に編集が進行中の場合、Close メソッドを呼び出すとエラーが生成されます。その代わりに、最初に Update または CancelUpdate メソッドを呼び出してください。 バッチ更新モードで Recordset オブジェクトを閉じると、最後の UpdateBatch 呼び出し以降のすべての変更が失われます。

Clone メソッドを使用して、開いている Recordset オブジェクトのコピーを作成する場合、元のオブジェクトまたは複製を閉じても、他のどのコピーも影響を受けません。

適用対象

参照

Open および Close メソッドの例 (VB)
Open および Close メソッドの例 (VBScript)
Open および Close メソッドの例 (VC++)
Open メソッド (ADO Connection)
Open メソッド (ADO Recordset)
Save メソッド