Jony Rato Posted December 1, 2015 at 11:57 AM Report Share #590266 Posted December 1, 2015 at 11:57 AM (edited) Boas pessoal Estou com uma dúvida, que é a seguinte Eu tenho duas tabelas: BnfP e a Bnf. O id_Bnf e o nome pertencem à tabela Bnf. O id_BnfP pertence à tabela Bnfp. Public Sub visualizarParentes() con.Close() con.Open() beneficiarios_parentes.Items.Clear() Dim TABLE As New DataTable(" beneficiariosparentes") Dim sqlQuery As MySqlDataAdapter sqlQuery = New MySqlDataAdapter("SELECT beneficiariosparentes.Id_Parente, beneficiariosparentes.Parente, beneficiariosparentes.Parentesco, beneficiariosparentes.NBeneficiario, beneficiariosparentes.Morada, beneficiarios.Id_Parente FROM beneficiarios, beneficiariosparentes WHERE beneficiariosparentes.Id_Parente = beneficiarios.Id_Parente ", con) sqlQuery.Fill(TABLE) For indx = 0 To TABLE.Rows.Count - 1 Dim lv As New ListViewItem lv.Text = (TABLE.Rows(indx).Item("Id_Parente")) lv.SubItems.Add(TABLE.Rows(indx).Item("Parente")) lv.SubItems.Add(TABLE.Rows(indx).Item("Parentesco")) lv.SubItems.Add(TABLE.Rows(indx).Item("NBeneficiario")) lv.SubItems.Add(TABLE.Rows(indx).Item("Morada")) beneficiarios_parentes.Items.Add(lv) Next TABLE.Dispose() sqlQuery.Dispose() ClearTable(TABLE) End Sub O que eu quero é quando estiver na ficha do Tiago (programa em visual basic), quero me apareça os dados do Id_parente que estão relacionados com ele. O meu problema é que os dados do Id_parente que estão relacionados com o Tiago aparece também na ficha do Bruno. No select já experimentei meter WHERE Nome= nome da caixa de texto, mas quando faço isso não aparece nada. Edited December 1, 2015 at 11:59 AM by Jony Rato Link to comment Share on other sites More sharing options...
mundo Posted December 1, 2015 at 02:56 PM Report Share #590274 Posted December 1, 2015 at 02:56 PM Usa um Inner Join Link to comment Share on other sites More sharing options...
Jony Rato Posted December 2, 2015 at 12:36 PM Author Report Share #590298 Posted December 2, 2015 at 12:36 PM Usa um Inner Join Como é que isso ficaria mais ou menos? Link to comment Share on other sites More sharing options...
Jony Rato Posted December 2, 2015 at 01:43 PM Author Report Share #590301 Posted December 2, 2015 at 01:43 PM SELECT beneficiariosparentes.Id_Parente, beneficiariosparentes.Parente, beneficiariosparentes.Parentesco, beneficiariosparentes.NBeneficiario, beneficiariosparentes.Morada, beneficiarios.Id_Parente FROM beneficiariosparentes INNER JOIN beneficiarios ON beneficiariosparentes.Id_Parente = beneficiarios.Id_Parente WHERE beneficiarios.Nome ='" & nometxt.Text & "';" Fiz assim, e continuo a ter o mesom problema, em que agora não me aparece nenhum Link to comment Share on other sites More sharing options...
vikcch Posted December 2, 2015 at 06:00 PM Report Share #590305 Posted December 2, 2015 at 06:00 PM boas, se calhar o problema é como tens as tabelas estruturadas... O meu problema é que os dados do Id_parente que estão relacionados com o Tiago aparece também na ficha do Bruno. então quer dizer que as rows do Bruno e do Tiago tem o mesmo valor no campo Id_parente? a imagem que postaste não aparece... podias postar as tabelas no formato: tabela A: id | nome ======== 1 | joão 2 | maria em vez de escreveres "O id_Bnf e o nome pertencem à tabela Bnf." e fazeres o mesmo para o resultado do select Link to comment Share on other sites More sharing options...
Jony Rato Posted December 3, 2015 at 09:28 AM Author Report Share #590320 Posted December 3, 2015 at 09:28 AM (edited) boas, se calhar o problema é como tens as tabelas estruturadas... então quer dizer que as rows do Bruno e do Tiago tem o mesmo valor no campo Id_parente? a imagem que postaste não aparece... podias postar as tabelas no formato: tabela A: id | nome ======== 1 | joão 2 | maria em vez de escreveres "O id_Bnf e o nome pertencem à tabela Bnf." e fazeres o mesmo para o resultado do select Tenho por exemplo a tabela assim: tabela Bnf: id_Bnf | nome | id_BnfP (foreign key) ================== 1 | Tiago | 2 2 | Tiago | 3 3 | Bruno | 6 Só que no viisual basic quando vou ver a ficha do Tiago e aparecem todos os dados da outra tabela correspondentes ao id_BnfP, esses dados também aparecem na Ficha do Bruno, e os da ficha do Bruno também aparecem no tiago. Se fizer com o Where Nome = nome da caixa de texto , não aparece nada Edited December 3, 2015 at 09:29 AM by Jony Rato Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now