Realizar búsqueda en varias tablas y columnas a la vez

Soy nuevo en estoy y estuve armando un pequeño programa en donde la función es cargar desde la base de datos access N cantidad de tablas, y realizar una busque por cada una de sus columnas y mostrarlas. El código que tengo actualmente es el siguiente :

Imports System. Data
Imports System. Data. OleDb

Public Class Form1
Dim conexion As New OleDbConnection

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

Try
'Si la conexion es verdadero.
conexion.ConnectionString = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\DPIRAWSON\bd_BASEDEDATOS.mdb")

MsgBox("La conexion es correcta", vbInformation, "Correcta") ' MENSAJE DE CONEXION A LA BASE DE DATOS
Dim CARGAR As New OleDbDataAdapter("SELECT * FROM tb_1", conexion) 'CARGA TABLA DE ACCESS
Dim DS As New DataSet
CARGAR.Fill(DS, "tb_1")
DataGridView1.DataSource = DS.Tables("tb_1") 'TERMINA LA CARGA DE ACCESS

Dim CARGA As New OleDbDataAdapter("SELECT * FROM tb_2", conexion) 'CARGA TABLA DE ACCESS
Dim DSS As New DataSet
CARGA.Fill(DSS, "tb_2")
DataGridView2.DataSource = DSS.Tables("tb_2")

Catch ex As Exception
' si es falsa
MsgBox("Sin Conexion", vbInformation, "Error al Conectar")
End Try

End Sub

Public Sub filtro_matri()
Dim CARGAR As New OleDbDataAdapter("SELECT * FROM tb_1 WHERE MATRICULA Like'" & TextBox1.Text & "%'", conexion)
Dim DS As New DataSet
CARGAR.Fill(DS, "tb_1")
DataGridView1.DataSource = DS.Tables("tb_1")
End Sub

Public Sub filtro_tabla2()
Dim CARGA As New OleDbDataAdapter("SELECT * FROM tb_2 WHERE nombre LIKE'" & TextBox1.Text & "%'", conexion)
Dim DSS As New DataSet
CARGA.Fill(DSS, "tb_2")
DataGridView2.DataSource = DSS.Tables("tb_2")
End Sub

Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
filtro_matri()
End Sub

Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles TextBox2.TextChanged
filtro_tabla2()
End Sub
End Class

En este caso busco la matricula en la tabla denominada (tb_1) pero esta tabla tiene más columnas las cuales también me gustaría buscar, como ejemplo matricula y apellido y nombre.-

Como también en la segunda tabla (tb_2) busco solo el nombre, pero esta tabla tiene columnas con nombres, apellidos.

Más o menos cerrando lo que quiero hacer es un filtrado con diferentes tablas que NO tienen vinculación entre si, pero si por ejemplo aparecen las mismas columnas tales como apellido nombres documento, vehículo.

en la parte de "SELECT * FROM tb_2 WHERE nombre LIKE'" & TextBox1.Text & "%'" 

Lo que estuve realizando es tratar de adaptar poniendo algunas o varias columnas para que realice el filtrado pero no lo pude realizar ya que tirar error de sintaxis.

1 respuesta

Respuesta
1

Bueno después mucho buscar, la solución fue utilizar un OR en la sentencia de búsqueda en la base de datos de access. Y quedo algo así

Dim CARGAR As New OleDbDataAdapter("SELECT * FROM tb_1 WHERE MATRICULA Like'" & TextBox1.Text & "%' OR APELLIDO Like '" & TextBox1.Text & )

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas