Validar si ya existe un registro en SQL Server desde DataGridView en Visual Basic, si existe omitirlo y agregar registros nuevos
Buenos días/tardes/noches
Tengo un un DataGridView en VB el cual muestra estos datos: (estos datos se muestran de una tabla en access, aquí yo no puedo realizar ninguna modificación). NOTA: Se estarán agregando datos nuevos día a día y la misma columna Contador se va incrementando.

Al momento de darle al botón Exportar checadas a SQL, lo realiza de manera correcta.

El detalle es que si le vuelvo a dar otra vez clic al botón, me duplica los registros que ya existen.
Quisiera tomar la columna "Contador" (en SQL es ID) en el DataGridView como ID único al momento de exportar y que "omita" los registros que ya están en SQL Server y me valla agregando los nuevos datos.
Aquí dejo el código que estoy utilizando:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim agregar As SqlCommand = New SqlCommand("insert into checada values (@id, @Trabajador, @Fecha, @Checada, @Terminal)", conexion)
conexion.Open()
Dim fila As DataGridViewRow = New DataGridViewRow()
Try
For Each fila In DataGridView1.Rows
Agregar. Parameters. Clear()
Agregar. Parameters. AddWithValue("@id", Convert. ToDecimal(fila. Cells("Contador"). Value))
Agregar. Parameters. AddWithValue("@Trabajador", Convert. ToDecimal(fila. Cells("Trabajador"). Value))
Agregar. Parameters. AddWithValue("@Fecha", Convert. ToDateTime(fila. Cells("Fecha"). Value))
Agregar. Parameters. AddWithValue("@Checada", Convert. ToDateTime(fila. Cells("Checada"). Value))
Agregar. Parameters. AddWithValue("@Terminal", Convert. ToDecimal(fila. Cells("Terminal"). Value))
Agregar. ExecuteNonQuery()
Next
MessageBox.Show("DATOS EXPORTADOS CORRECTAMENTE A SQL")
Catch ex As Exception
MessageBox.Show("OCURRIO UN ERROR EN LA IMPORTACION, FAVOR DE COMUNICARSE CON IT SUPPORT")
Finally
conexion.Close()
End Try
End Sub
1 respuesta
Respuesta de Tor Cheer