Close メソッド (ADO)

適用先: Access 2013、Office 2013

開いているオブジェクトおよびそれに関連するすべてのオブジェクトを閉じます。

構文

object.Close

注釈

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

Connection

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

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

接続上に開いた Recordset オブジェクトがある状態で Connection オブジェクトを閉じると、すべての Recordset オブジェクトの保留中の変更がすべてロールバックされます。 トランザクションの処理中に Close メソッドを呼び出して明示的に Connection オブジェクトを閉じると、エラーが発生します。 トランザクションの処理中に Connection オブジェクトが適用範囲を外れると、トランザクションは自動的にロールバックされます。

Recordset、Record、および Stream

Close メソッドを使用して Recordset オブジェクト、 Record オブジェクト、または Stream オブジェクトを閉じると、関連するデータ、およびデータに対するそのオブジェクトからの排他アクセスが、すべて解放されます。 後で Open メソッドを呼び出し、同じ属性で、または属性を変更して、オブジェクトを再度開くことができます。

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

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

Clone メソッドを使用して、開いている Recordset オブジェクトの複製を作成した場合、元のオブジェクトまたはいずれかの複製を閉じても、他の複製には影響しません。