Dos tablas, una en Access y otra en SQL Server.
La de Access tiene todos los socios dados de alta y baja y la de SQL Server debería tener sólo los que están dados de alta. Quiero mostrar en un datagrid todos los que están dados de alta en la primera pero que no estén en la segunda, es decir los que están pendientes de dar de alta. Y en otro datagrid, los que haya que borrar de SQL server pues están en Access como dados de baja. La lista de altas es la que me está costando.
Código:
Gracias y un saludo. Dim strSel As String Dim i As Integer Dim conOle As New OleDbConnection(ConfigurationSettings.AppSettings("strConOle")) Dim dtOle As New DataTable Dim conSQL As New SqlConnection(ConfigurationSettings.AppSettings("strConSQL")) Dim dtSQL As New DataTable strSel = "SELECT [Número de Socio] AS numSocio, '' AS nombre, '' AS DNI FROM [Tabla con datos de situación] WHERE [Situación para el Club] = 'A'" Dim daOle As New OleDbDataAdapter(strSel, conOle) daOle.Fill(dtOle) Dim strBuilBajas As New StringBuilder If dtOle.Rows.Count > 0 Then strBuilBajas.Append("1,2") For i = 0 To dtOle.Rows.Count - 1 strBuilBajas.Append("," & dtOle.Rows(i)("numSocio")) Next End If 'Se carga la lista para dar de baja strSel = "SELECT numero_socio AS numSocio, (nombre_socio + ' ' + apellido1_socio + ' ' + apellido2_socio) AS nombre, dni AS DNI FROM acceso_socios WHERE numero_socio NOT IN (" & strBuilBajas.ToString & ")" Dim daBajasSQL As New SqlDataAdapter(strSel, conSQL) daBajasSQL.Fill(dtSQL) Me.dgBajas.DataSource = dtSQL Me.dgBajas.DataBind() dtSQL.Clear() 'Se carga la lista para dar de alta strSel = "SELECT numero_socio AS numSocio FROM acceso_socios" Dim daAltasSQL As New SqlDataAdapter(strSel, conSQL) daAltasSQL.Fill(dtSQL) ' Aquí me he quedado bloqueado