VB.Net by API/System.Data/DataTableMapping

Материал из VB Эксперт
Перейти к: навигация, поиск

DataTableMapping.ColumnMappings.Add

  
Imports System
Imports System.Xml
Imports System.Xml.Schema
Imports System.IO
Imports System.Data.OleDb
Imports System.Data.rumon
Imports System.Data

Public Class MainClass
    
    Shared Sub Main()
        Dim dsUsers As New DataSet("Users")
        Try
            Dim dbConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=Employee.mdb")
            Dim daUsers As New OleDbDataAdapter("SELECT ID, FirstName, LastName FROM Employee", dbConn)
            Dim dcmUserID As New DataColumnMapping("ID", "EmployeeID")
            Dim dcmFirstName As New DataColumnMapping("FirstName", "FirstName")
            Dim dcmLastName As New DataColumnMapping("LastName", "LastName")
            Dim dtmUsers As New DataTableMapping("Table", "Employee")
            dtmUsers.ColumnMappings.Add(dcmUserID)
            dtmUsers.ColumnMappings.Add(dcmFirstName)
            dtmUsers.ColumnMappings.Add(dcmLastName)
            daUsers.TableMappings.Add(dtmUsers)
            daUsers.Fill(dsUsers)
            Dim cb As New OleDbCommandBuilder(daUsers)
            Dim r As DataRow = dsUsers.Tables(0).NewRow()
            r("FirstName") = "Eddie"
            r("LastName") = "Robinson"
            dsUsers.Tables(0).Rows.Add(r)
            daUsers.Update(dsUsers.GetChanges())
            dsUsers.AcceptChanges()
        Catch ex As Exception
            dsUsers.RejectChanges()
            Console.WriteLine(ex.Message)
        End Try
    End Sub
End Class


New DataTableMapping

  

Imports System
Imports System.Xml
Imports System.Xml.Schema
Imports System.IO
Imports System.Data.OleDb
Imports System.Data.rumon
Imports System.Data

Public Class MainClass
    
    Shared Sub DoDataMappings(ByVal da As OleDbDataAdapter)
        Try
            " Define an array of column to map
            Dim dcmMappedColumns() As DataColumnMapping = { _
                      New DataColumnMapping("ID", "EmployeeID"), _
                      New DataColumnMapping("FirstName", "FirstName"), _
                      New DataColumnMapping("LastName", "LastName")}
            " Define the table containing the mapped columns
            Dim dtmUsers As New DataTableMapping("Table", "Employee", _
            dcmMappedColumns)
            " Activate the mapping mechanism
            da.TableMappings.Add(dtmUsers)
        Catch ex As Exception
            " An error occurred. Show the error message
            Console.WriteLine(ex.Message)
        End Try
    End Sub
    Shared Sub Main()
        Try
            " Define a connection object
            Dim dbConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=Employee.mdb")
            " Create a data adapter to retrieve records from db
            Dim daUsers As New OleDbDataAdapter("SELECT ID, FirstName, LastName FROM Employee", dbConn)
            Dim dsUsers As New DataSet("Employee")
            DoDataMappings(daUsers)
            " Fill the dataset
            daUsers.Fill(dsUsers)
            " Go through the records and print them using the mapped names
            Dim r As DataRow
            For Each r In dsUsers.Tables("Employee").Rows
                Console.WriteLine("ID: {0}, FirstName: {1}, LastName: {2}", r("EmployeeID"), r("FirstName"), r("LastName"))
            Next
        Catch ex As Exception
            " An error occurred. Show the error message
            Console.WriteLine(ex.Message)
        End Try
    End Sub
End Class