SqlDataReader.Close メソッド
アセンブリ: System.Data (system.data.dll 内)


SqlDataReader を使用した後で、SqlConnection を他の操作に使用するには、Close メソッドを明示的に呼び出す必要があります。
Close メソッドは、出力パラメータの値、戻り値、および RecordsAffected にデータを格納します。そのため、大きくて複雑なクエリの処理に SqlDataReader を使用すると、閉じるのに時間がかかります。戻り値や、クエリの影響を受けたレコード数が必要ない場合は、関連付けられた SqlCommand オブジェクトの Cancel メソッドを呼び出してから Close メソッドを呼び出すと、SqlDataReader を閉じる時間を短縮できます。
![]() |
---|
クラスの Finalize メソッドで、Connection、DataReader、またはその他のマネージ オブジェクトの Close または Dispose を呼び出すことは避けてください。ファイナライザでは、クラスが直接所有しているアンマネージ リソースだけを解放してください。アンマネージ リソースを一切所有しないクラスの場合は、クラス定義の中に Finalize メソッドを含めないでください。詳細については、「ガベージ コレクション」を参照してください。 |

SqlConnection、SqlCommand、および SqlDataReader を作成する例を次に示します。この例では、データを読み取り、コンソール ウィンドウに出力します。次に、SqlDataReader を閉じます。SqlConnection は、using コード ブロックの末尾で自動的に閉じられます。
Private Sub ReadOrderData(ByVal connectionString As String) Dim queryString As String = _ "SELECT OrderID, CustomerID FROM dbo.Orders;" Using connection As New SqlConnection(connectionString) Dim command As New SqlCommand(queryString, connection) connection.Open() Dim reader As SqlDataReader = command.ExecuteReader() ' Call Read before accessing data. While reader.Read() Console.WriteLine(String.Format("{0}, {1}", _ reader(0), reader(1))) End While ' Call Close when done reading. reader.Close() End Using End Sub
private static void ReadOrderData(string connectionString) { string queryString = "SELECT OrderID, CustomerID FROM dbo.Orders;"; using (SqlConnection connection = new SqlConnection(connectionString)) { SqlCommand command = new SqlCommand(queryString, connection); connection.Open(); SqlDataReader reader = command.ExecuteReader(); // Call Read before accessing data. while (reader.Read()) { Console.WriteLine(String.Format("{0}, {1}", reader[0], reader[1])); } // Call Close when done reading. reader.Close(); } }

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSqlDataReader.Close メソッドを検索する場合は、下記のリンクをクリックしてください。

- SqlDataReader.Close メソッドのページへのリンク