CRIAR UM FILTRO DE PESQUISA
Boa Tarde Pessoal !
Eu gostaria de fazer um filtro de pesquisa, na qual eu poderia escolher valores de todas as tabelas do ACCESS.
Pesquisando no textbox e aparecendo no DataGrid.
Alguém pode me ajudar ?
Eu consigo fazer uma pesquisa só em um campo. Porém não é o suficiente.
Obrigado !
Eu gostaria de fazer um filtro de pesquisa, na qual eu poderia escolher valores de todas as tabelas do ACCESS.
Pesquisando no textbox e aparecendo no DataGrid.
Alguém pode me ajudar ?
Eu consigo fazer uma pesquisa só em um campo. Porém não é o suficiente.
Obrigado !
No próprio Access faz este tipo de consulta.
Bom que estas tabelas estejam relacionadas.
Vá no Access clica em criar e depois em design da consulta.
A sua vai ser seleção.
Bom que estas tabelas estejam relacionadas.
Vá no Access clica em criar e depois em design da consulta.
A sua vai ser seleção.
Sim, Mas eu quero deixar no VB entende ?
Por exemplo fazer um filtro assim:
Um nome, que tenha uma certa idade e que more num certo bairro.
obs.: Só tem 1 tabela na qual eu deixo essas informações
Por exemplo fazer um filtro assim:
Um nome, que tenha uma certa idade e que more num certo bairro.
obs.: Só tem 1 tabela na qual eu deixo essas informações
Cara,
Isso é o basicão do SQL.
Sua String deveria ficar assim:
[txt-color=#e80000][Ô]SELECT nome FROM sua_tabela WHERE nome = [ô]nome_a_pesquisar[ô] AND idade = qualIdade AND bairro = [ô]qualBairro[ô][Ô][/txt-color]
Para simplificar, veja o Exemplo abaixo:
Para deixar uma coisa claro, estou assumindo que seu campo [Ô][txt-color=#0000f0]idade[/txt-color][Ô] é do tipo [txt-color=#0000f0]número[/txt-color] ou [txt-color=#0000f0]int[/txt-color], lá no banco de dados.
Por isso que [Ô][txt-color=#e80000]{0}[/txt-color][Ô] e [Ô][txt-color=#e80000]{2}[/txt-color][Ô] estão entre aspas simples e [Ô][txt-color=#e80000]{1}[/txt-color][Ô] não está.
Você pode também estudar a possibilidade utilizar o [Ô]Like[Ô] na query do SQL.
[txt-color=#0000f0]Pesquise aqui sobre o LIKE[/txt-color]
Isso é o basicão do SQL.
Sua String deveria ficar assim:
[txt-color=#e80000][Ô]SELECT nome FROM sua_tabela WHERE nome = [ô]nome_a_pesquisar[ô] AND idade = qualIdade AND bairro = [ô]qualBairro[ô][Ô][/txt-color]
Para simplificar, veja o Exemplo abaixo:
Dim vNome As String = txtNome.Text.Trim
Dim vIdade As String = txtIdade.Text.Trim
Dim vBairro As String = txtBairro.Text.Trim
Dim vQuery As String = String.Format([txt-color=#e80000][Ô]SELECT nome FROM sua_tabela WHERE nome = [ô]{0}[ô] AND idade = {1} AND bairro = [ô]{2}[ô][Ô][/txt-color], vNome, vIdade, vBairro)
Para deixar uma coisa claro, estou assumindo que seu campo [Ô][txt-color=#0000f0]idade[/txt-color][Ô] é do tipo [txt-color=#0000f0]número[/txt-color] ou [txt-color=#0000f0]int[/txt-color], lá no banco de dados.
Por isso que [Ô][txt-color=#e80000]{0}[/txt-color][Ô] e [Ô][txt-color=#e80000]{2}[/txt-color][Ô] estão entre aspas simples e [Ô][txt-color=#e80000]{1}[/txt-color][Ô] não está.
Você pode também estudar a possibilidade utilizar o [Ô]Like[Ô] na query do SQL.
[txt-color=#0000f0]Pesquise aqui sobre o LIKE[/txt-color]
Obrigado pela ajuda !!!
Eu vou fazer um teste aqui :D
Eu vou fazer um teste aqui :D
Eu fiz as alterações, criei mais 2 textbox para a pesquisa e apareceu o seguintes erro(segue anexo):
Coloque sua consulta.
Vai ficar mais fácil o pessoal responder.
Vai ficar mais fácil o pessoal responder.
----------------
Private Sub PPesquisaCliente()
Using con As OleDbConnection = Getconnection()
Try
con.Open()
Dim sql As String = [Ô]SELECT nome FROM Clientes WHERE Nome = [ô]%[Ô] & txtPesquisa.Text & [Ô]%[ô] AND Telefone = [ô]%[Ô] & TextBox1.Text & [Ô]%[ô] AND UF = [ô]%[Ô] & TextBox2.Text & [Ô]%[ô][Ô]
Dim cmd As OleDbCommand = New OleDbCommand(sql, con)
Dim da As OleDbDataAdapter = New OleDbDataAdapter(cmd)
Dim dt As DataTable = New DataTable
da.Fill(dt)
dgvClientes.DataSource = dt
Catch ex As Exception
MsgBox(ex.Message)
Finally
con.Close()
End Try
End Using
End Sub
----------------------------------------------------------------------
Private Sub PPesquisaCliente()
Using con As OleDbConnection = Getconnection()
Try
con.Open()
Dim sql As String = [Ô]SELECT nome FROM Clientes WHERE Nome = [ô]%[Ô] & txtPesquisa.Text & [Ô]%[ô] AND Telefone = [ô]%[Ô] & TextBox1.Text & [Ô]%[ô] AND UF = [ô]%[Ô] & TextBox2.Text & [Ô]%[ô][Ô]
Dim cmd As OleDbCommand = New OleDbCommand(sql, con)
Dim da As OleDbDataAdapter = New OleDbDataAdapter(cmd)
Dim dt As DataTable = New DataTable
da.Fill(dt)
dgvClientes.DataSource = dt
Catch ex As Exception
MsgBox(ex.Message)
Finally
con.Close()
End Try
End Using
End Sub
----------------------------------------------------------------------
Tópico encerrado , respostas não são mais permitidas