El uso de dos conjuntos de datos en Visual Basic es una de las mejores maneras de mantener los datos sincronizados cuando un usuario realiza cambios en los datos originales. Un " conjunto de datos " es una caché en memoria de los datos recuperados de un origen de datos como una tabla. Los programadores suelen cargarse los datos de una tabla de base de datos a un " conjunto de datos " y permiten al usuario realizar cambios en los datos originales. Un segundo " DataSet " se utiliza para capturar los cambios y se fusionó de nuevo al " conjunto de datos " original utilizando el método " DataSet.Merge " . Cosas que necesitará
Microsoft Visual Studio
Ver Más instrucciones
1
lanzamiento Microsoft Visual Studio , haga clic en "Nuevo proyecto " en el panel izquierdo de la pantalla del ordenador , y ampliar " Plantillas instaladas . " abajo " Visual Basic" Haga clic en "Windows " y haga doble clic en " Aplicación de consola " en el centro de la ventana de diálogo para crear un nuevo proyecto de consola .
2
Copia y pega el siguiente código para crear el primer " conjunto de datos " una mesa, dos columnas y tres filas :
dataSet As New DataSet ( " dataSet " )
tabla Dim As New DataTable ( "Artículos" )
Dim idColumn As New DataColumn ( "id" , Type.GetType ( " System.Int32 " ))
idColumn.AutoIncrement = True
itemColumn Dim As New DataColumn ( "Item" , Type.GetType ( " System.Int32 " ))
fila As DataRow
3
Añada la siguiente línea de código para crear el segundo " DataSet : "
changeDataSet As DataSet
4
coulumns agregar a la mesa y poner la mesa para la Página 5
Agregar diez filas de datos a la tabla y aceptar los cambios :
Dim i As Integer
For i = 0 a 9
fila = table.NewRow ()
fila ( "Item" ) = i
table.Rows.Add (fila )
Siguiente I Love
DataSet.AcceptChanges ( 6 )
Imprimir valores " DataSet " en la ventana de la consola :
PrintValues
( conjunto de datos, los "valores originales ")
7
Modificar la tabla mediante la adición de nuevos valores para las dos primeras filas , la adición de una nueva fila , y la adición de un error de una de las filas :
table.Rows
( 0 ) ( " artículo " ) = 50
table.Rows ( 1 ) (" artículo ") = 111
fila = table.NewRow ()
fila
( "Item ") = 74
table.Rows . Añadir (fila)
table.Rows
( 1 ) . RowError = " más de 100 " PrintValues
inicio ( dataSet , " Modificado y Nuevos Valores " ) baratos en 8
Compruebe si la tabla tiene cambios y si lo hace entonces fusionar los cambios de nuevo a la primera " DataSet " e imprimir los resultados :
Si DataSet.HasChanges ( DataRowState.Modified DataRowState.Added O ) _
< p > Y dataSet.HasErrors Entonces
changeDataSet = DataSet.GetChanges ( DataRowState.Modified _
O DataRowState.Added )
PrintValues
( changeDataSet , "valores Subset ") < br >
CHANGETABLE As DataTable
For Each CHANGETABLE En changeDataSet.Tables
Si changeTable.HasErrors Entonces
changeRow As DataRow
For Each changeRow En changeTable.Rows
Si CInt ( changeRow ( "Item ", _
DataRowVersion.Current ) ) > 100 entonces changeRow.RejectChanges
inicio ( )
changeRow.ClearErrors ( ) guía
End If
Siguiente changeRow
End If
Siguiente CHANGETABLE
PrintValues ( changeDataSet , " Avenida valores subconjunto " )
DataSet.Merge ( changeDataSet )
PrintValues ( conjunto de datos, "Valores fusionadas " )
Console.ReadLine ()
End If End sub
9
Agregue el siguiente procedimiento Sub para imprimir valores " DataSet " a la ventana de la consola :
PrintValues Private Sub ( dataSet ByVal como DataSet , etiqueta de ByVal como secuencia)
Console.WriteLine ( ControlChars.Cr y etiqueta)
tabla As DataTable
para cada tabla de dataSet.Tables
< p > Console.WriteLine ( " TableName :" & table.TableName )
fila As DataRow
para cada fila de table.Rows
columna As DataColumn
para cada columna de table.Columns
Console.Write ( ControlChars.Tab & "" _
y fila ( columna) . ToString ( ))
Siguiente columna
Console.WriteLine ()
Sig. vuelta
siguiente tabla
End Sub
10
Press "F5 " para ejecutar el programa .