Jump to content
whize13

[Resolvido] Pesquisas na BD

Recommended Posts

whize13

Bom o meu objectivo era que uma pessoa ao escrever um nome e clicasse no botão pesquisar o DataGridView mostrasse apenas os nomes pesquisados, no entanto as tabelas ficam vazias

 Dim da1 As OleDb.OleDbDataAdapter
    Dim dt1 As New DataTable
    Dim ds1 As New DataSet
    ds1.Tables.Add(dt1)
    'Preenche as colunas
    da1 = New OleDb.OleDbDataAdapter("SELECT DadosSocio.N_Socio, DadosPessoais.Nome, BI_CC.BI_CC, DadosPessoais.NIF, Morada.Cod_Postal, Morada.Moradas, Morada.Pais, Morada.Distrito, Morada.Localidade, DadosPessoais.Telefone, DadosPessoais.Telemovel, DadosPessoais.DataNasc, DadosPessoais.LocalNasc, DadosPessoais.Email, DadosPessoais.Site, DadosPessoais.Contribuinte, DadosCarta.CartaCondução, DadosCarta.Data, DadosCarta.[Local], DadosSocio.DataFidel, DadosSocio.Anual, DadosSocio.[1Semestre], DadosSocio.[2Semestre], DadosSocio.N_SocioProp, DadosSocio.SocioPro, DadosSocio.Estado FROM Morada INNER JOIN (DadosSocio INNER JOIN (((BI_CC INNER JOIN DadosPessoais ON BI_CC.BI_CC = DadosPessoais.BI_CC) INNER JOIN (DadosCarta INNER JOIN Carta ON DadosCarta.CartaCondução = Carta.CartaCondução) ON DadosPessoais.NIF = Carta.NIF) INNER JOIN Clube ON DadosPessoais.NIF = Clube.NIF) ON DadosSocio.N_Socio = Clube.N_Socio) ON Morada.Cod_Postal = DadosPessoais.Cod_Postal Where DadosPessoais.Nome = '%'+'TxtbNome'+'%'", cn)
    da1.Fill(dt1)
    Me.DataGridView1.DataSource = dt1.DefaultView
   End Sub

Share this post


Link to post
Share on other sites
nelsonr

Isso é Access, correcto? Experimenta assim:

Where DadosPessoais.Nome LIKE '*"+TxtbNome.Text+"*'"

Se não der, substitui o * por %

Edited by nelsonr

Share this post


Link to post
Share on other sites
whize13

Sim é, mas continuo a ficar com o datagridview vazio

esta assim

Where DadosPessoais.Nome = DadosPessoais.Nome LIKE '*" + TxtbNome.Text + "*'", cn)

Btw ter "&" e "+" é igaul certo?

Share this post


Link to post
Share on other sites
nelsonr

Experimenta executar o query directamente no Access e ve se retorna alguma coisa.

Experimentaste com % em vez de *?

Quando se junta strings, o uso de & e + vai dar ao mesmo. A diferença vem quando se tenta juntar com outros tipos. Mas em VB.NET o normal mesmo é usar o &.

Eu como programo mais em C#, não estou habituado ao uso de & para esse fim.

Share this post


Link to post
Share on other sites
whize13

No Access não retorna nada, já exprimentei tanto com o "*" como com " % " nos 2 lados mas nenhum retorna nada

Em C# & é o and Logico ?

Já resolvi o problema ;D

Obrigado mais uma vez moss tu ao menos sabes de tudo xD tiraste curso de programação?

Share this post


Link to post
Share on other sites
nelsonr

Em C# & é o and Logico ?

É para fazer operações com bits.

Já resolvi o problema ;D

Qual era o problema?

Share this post


Link to post
Share on other sites
whize13

ao fazer Ctrl+v Copiei com o "v" -.- e depois como copiei sempre apartir do erro prontos

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.