SqlDataReader.Close Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
SqlDataReader Menutup objek .
public:
virtual void Close();
public:
override void Close();
public void Close ();
public override void Close ();
abstract member Close : unit -> unit
override this.Close : unit -> unit
override this.Close : unit -> unit
Public Sub Close ()
Public Overrides Sub Close ()
Penerapan
Contoh
Contoh berikut membuat SqlConnection, , SqlCommand
dan SqlDataReader. Contohnya membaca data, menulisnya ke jendela konsol. Kode kemudian menutup SqlDataReader.
SqlConnection ditutup secara otomatis di akhir using
blok kode.
private static void ReadOrderData(string connectionString)
{
string queryString =
"SELECT OrderID, CustomerID FROM dbo.Orders;";
using (SqlConnection connection =
new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command =
new SqlCommand(queryString, connection))
{
using (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();
}
}
}
}
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
Keterangan
Anda harus secara eksplisit memanggil Close metode ketika Anda menggunakan SqlDataReader untuk menggunakan yang terkait SqlConnection untuk tujuan lain.
Metode Close
ini mengisi nilai untuk parameter output, mengembalikan nilai, dan RecordsAffected
, meningkatkan waktu yang diperlukan untuk menutup SqlDataReader
yang digunakan untuk memproses kueri besar atau kompleks. Ketika nilai yang dikembalikan dan jumlah rekaman yang terpengaruh oleh kueri tidak signifikan, waktu yang diperlukan untuk menutup SqlDataReader
dapat dikurangi dengan memanggil Cancel metode objek terkait SqlCommand sebelum memanggil Close
metode .
Perhatian
Jangan memanggil Close
atau Dispose
pada Koneksi, DataReader, atau objek terkelola lainnya dalam Finalize
metode kelas Anda. Dalam finalizer, Anda hanya boleh merilis sumber daya yang tidak dikelola yang dimiliki kelas Anda secara langsung. Jika kelas Anda tidak memiliki sumber daya yang tidak dikelola, jangan sertakan metode Finalize
dalam definisi kelas Anda. Untuk informasi lebih lanjut, lihat Pengumpulan Sampah.