Aracılığıyla paylaş


Load yöntemi

yöntemini kullanarak Load veri kaynağından satırlar içeren bir yükleyebilirsiniz DataTable . Bu, en basit biçimiyle tek bir parametre olan DataReader'ı kabul eden aşırı yüklenmiş bir yöntemdir. Bu formda DataTable'ı satırlarla yükler. İsteğe bağlı olarak, Verilerin DataTable'a nasıl ekleneceğini denetlemek için LoadOption parametresini belirtebilirsiniz.

LoadOption parametresi, DataTable'ın zaten veri satırları içerdiği durumlarda kullanışlıdır çünkü veri kaynağından gelen verilerin tabloda bulunan verilerle nasıl birleştirileceğini açıklar. Örneğin PreserveCurrentValues (varsayılan), DataTable'da bir satırın Eklendiolarak işaretlendiği durumlarda Özgün değerinin veya her sütunun veri kaynağından eşleşen satırın içeriğine ayarlandığını belirtir. Geçerli değer, satır eklendiğinde atanan değerleri korur ve satırın RowState değeri Değiştirildi olarak ayarlanır.

Aşağıdaki tabloda numaralandırma değerlerinin LoadOption kısa bir açıklaması yer alır.

LoadOption değeri Açıklama
OverwriteRow Gelen satırlar DataTable'daki bir satırla aynı PrimaryKey değerine sahipse, her sütunun Özgün ve Geçerli değerleri gelen satırdaki değerlerle değiştirilir ve RowState özelliği Değişmedi olarak ayarlanır.

DataTable'da henüz var olmayan veri kaynağındaki satırlar, Değişmedi RowState değeriyle eklenir.

Bu seçenek veri kaynağının içeriğiyle eşleşmesi için DataTable'ın içeriğini yeniler.
PreserveCurrentValues (varsayılan) Gelen satırlar DataTable'daki bir satırla aynı PrimaryKey değerine sahipse, Özgün değer gelen satırın içeriğine ayarlanır ve Geçerli değer değiştirilmez.

RowStateEklendi veya Değiştirildi ise, Değiştirildi olarak ayarlanır.

RowState Silinmişse, Silinmiş olarak kalır.

DataTable'da henüz var olmayan veri kaynağından satırlar eklenir ve RowState değişmedi olarak ayarlanır.
UpdateCurrentValues Gelen satırlar DataTable'daki satırla aynı PrimaryKey değerine sahipse, Geçerli değer Özgün değere kopyalanır ve Geçerli değer gelen satırın içeriğine ayarlanır.

DataTable'dakiRowState Eklendi ise, RowState eklendi olarak kalır. Değiştirildi veya Silindi olarak işaretlenmiş satırlar için RowState Değiştirildi şeklindedir.

DataTable'da henüz var olmayan veri kaynağından satırlar eklenir ve RowState Eklendi olarak ayarlanır.

Aşağıdaki örnek, Northwind veritabanındaki çalışanların doğum günlerinin listesini görüntülemek için Load yöntemini kullanır.

Private Sub LoadBirthdays(ByVal connectionString As String)
    ' Assumes that connectionString is a valid connection string
    ' to the Northwind database on SQL Server.
    Dim queryString As String = _
    "SELECT LastName, FirstName, BirthDate " & _
      " FROM dbo.Employees " & _
      "ORDER BY BirthDate, LastName, FirstName"

    ' Open and fill a DataSet.
    Dim adapter As SqlDataAdapter = New SqlDataAdapter( _
        queryString, connectionString)
    Dim employees As New DataSet
    adapter.Fill(employees, "Employees")

    ' Create a SqlDataReader for use with the Load Method.
    Dim reader As DataTableReader = employees.GetDataReader()

    ' Create an instance of DataTable and assign the first
    ' DataTable in the DataSet.Tables collection to it.
    Dim dataTableEmp As DataTable = employees.Tables(0)

    ' Fill the DataTable with data by calling Load and
    ' passing the SqlDataReader.
    dataTableEmp.Load(reader, LoadOption.OverwriteRow)

    ' Loop through the rows collection and display the values
    ' in the console window.
    Dim employeeRow As DataRow
    For Each employeeRow In dataTableEmp.Rows
        Console.WriteLine("{0:MM\\dd\\yyyy}" & ControlChars.Tab & _
          "{1}, {2}", _
          employeeRow("BirthDate"), _
          employeeRow("LastName"), _
          employeeRow("FirstName"))
    Next employeeRow

    ' Keep the window opened to view the contents.
    Console.ReadLine()
End Sub

Ayrıca bkz.