Usuário com melhor resposta
MYSQL INNER JOIN e REPORT VIEWER(RDLC)

Pergunta
-
tenho estas tabelas e quero juntá-las em um reportviewer da seguinte maneira:
Quero exibir o COD_CAD, NOME CPF, BAIRRO, TELEFONE, COMUNIDADE, PARENTE
mas minha tabela parente vai ter vários cadastros relacionados com o COD da tabela cadastrado, ou seja acho que a coluna parente teria vairios registros entao tenho este problema, pois quero mostrar a tabela cadastrados mas, minha chave estrangeira está na tabela parente.....
tentei fazer da seguinte maneira mas nao retorna nenhum registro, espero ajuda de voces no forum
o metodo Fill,GetData()
SELECT cad.FOTO, cad.COD_CAD, cad.NOME_CADASTRADO, cad.CPF, cad.ENDERECO, com.NOME_COMUNIDADE, p.NOME_PARENTE
FROM CADASTRADO cad
INNER JOIN COMUNIDADE com ON cad.COD_COMUNIDADE = com.COD_COM
INNER JOIN PARENTE p ON p.COD_CADASTRADOS = cad.COD_CAD
ORDER BY cad.COD_CADMySQL não retornou nenhum registo. (A consulta demorou 0.0026 segundos.)
SELECT cad.FOTO, cad.COD_CAD, cad.NOME_CADASTRADO, cad.CPF, cad.ENDERECO, com.NOME_COMUNIDADE, p.NOME_PARENTE FROM CADASTRADO cad INNER JOIN COMUNIDADE com ON cad.COD_COMUNIDADE = com.COD_COM INNER JOIN PARENTE p ONcad.COD_CAD = p.COD_CADASTRADOS ORDER BY cad.COD_CAD- Editado D3292 sábado, 4 de fevereiro de 2017 05:26 editar texto
Respostas
-
Que bom!
A gente restringiu a consulta, caso queira que apareça retire a clausula WHERE, ficando assim:
SELECT CADASTRADO.FOTO, CADASTRADO.COD_CAD, CADASTRADO.NOME_CADASTRADO, CADASTRADO.CPF, CADASTRADO.ENDERECO, COMUNIDADE.NOME_COMUNIDADE, PARENTE.NOME_PARENTE FROM CADASTRADO INNER JOIN COMUNIDADE ON CADASTRADO.COD_COMUNIDADE = COMUNIDADE.COD_COM INNER JOIN PARENTE ON PARENTE.COD_CADASTRADOS = CADASTRADO.COD_CAD
Atenciosamente,
- Marcado como Resposta D3292 domingo, 5 de fevereiro de 2017 04:22
-
Sim, é possível.
Veja esses link`s:
http://www.macoratti.net/aspn_grv.htm
Obs: Caso problema inicial tenha sido solucionado, não esqueça de marcar como respondido para caso outra pessoa tenha a mesma dúvida consiga achar a solução mais fácil.
Atenciosamente,
- Editado Gabriel Bassani Ribeiro domingo, 5 de fevereiro de 2017 03:42
- Marcado como Resposta D3292 domingo, 5 de fevereiro de 2017 04:40
Todas as Respostas
-
Boa noite D3292, tudo bem?
Vamos lá...
1- Quando você executa o código no Manager do MySql retorna algum registro ou não?
2- Em todas as tabelas tem registro? Resumindo: A tabela Cadastro, Parente e Comunidade possuem registros?
3- Faz um Select em um código de cadastro específico para cada tabela e posta o resultado. OBS: O código do cadastro tem que ser o mesmo só para vê como está sendo retornado a informação.
Porque é normal uma tabela possui mais de um registro e está ligado a outra que é único. Um exemplo desse fato é uma tabela de Dados Gerais de um NF e uma tabela de Itens da NF. Na primeira tabela o número da NF nunca vai se repetir, mas na segunda conterá vários registro com número da NF, pois uma NF pode ter n produtos.
Atenciosamente,
-
Não retorna registro, sendo que ja registrei alguns cadastros na tabela cadastrado e na tabela parente que recebe o id do cadastrado, então eu fiquei sem ideia de como fazer, o modelo do meu report rdlc quero que gere cartoes com todos cadastros.....
-
D3292,
Por favor, poste o resultado de cada consulta, segue a query:
SELECT * FROM CADASTRADO WHERE COD_CAD = 1 // Esse Código da Comunidade tem que ser o mesmo retornado pela primeira query SELECT * FROM COMUNIDADE WHERE COD_COMUNIDADE = 1 // Esse Código da Parente tem que ser o mesmo da primeira query SELECT * FROM PARENTE WHERE COD_CADASTRADOS = 1
Atenciosamente,
- Editado Gabriel Bassani Ribeiro domingo, 5 de fevereiro de 2017 01:27
-
-
Obrigado!
Agora posta o resultado dessa consulta
SELECT CADASTRADO.FOTO, CADASTRADO.COD_CAD, CADASTRADO.NOME_CADASTRADO, CADASTRADO.CPF, CADASTRADO.ENDERECO, COMUNIDADE.NOME_COMUNIDADE, PARENTE.NOME_PARENTE FROM CADASTRADO INNER JOIN COMUNIDADE ON CADASTRADO.COD_COMUNIDADE = COMUNIDADE.COD_COM INNER JOIN PARENTE ON PARENTE.COD_CADASTRADOS = CADASTRADO.COD_CAD WHERE CADASTRADO.COD_CAD = 1
OBS: Igual você fez no ultimo post.
-
-
Que bom!
A gente restringiu a consulta, caso queira que apareça retire a clausula WHERE, ficando assim:
SELECT CADASTRADO.FOTO, CADASTRADO.COD_CAD, CADASTRADO.NOME_CADASTRADO, CADASTRADO.CPF, CADASTRADO.ENDERECO, COMUNIDADE.NOME_COMUNIDADE, PARENTE.NOME_PARENTE FROM CADASTRADO INNER JOIN COMUNIDADE ON CADASTRADO.COD_COMUNIDADE = COMUNIDADE.COD_COM INNER JOIN PARENTE ON PARENTE.COD_CADASTRADOS = CADASTRADO.COD_CAD
Atenciosamente,
- Marcado como Resposta D3292 domingo, 5 de fevereiro de 2017 04:22
-
cara valeu, quero aproveitar o tópico, e sua experiência, você saberia como fazer aquele modelo de cartões no reportviewer? estou estudando o group parent, mas ainda não consegui e não sei se é isto mesmo que tenho que estudar, seria possivel fazer aquele modelo usando essa query?
- Editado D3292 domingo, 5 de fevereiro de 2017 03:12
-
Sim, é possível.
Veja esses link`s:
http://www.macoratti.net/aspn_grv.htm
Obs: Caso problema inicial tenha sido solucionado, não esqueça de marcar como respondido para caso outra pessoa tenha a mesma dúvida consiga achar a solução mais fácil.
Atenciosamente,
- Editado Gabriel Bassani Ribeiro domingo, 5 de fevereiro de 2017 03:42
- Marcado como Resposta D3292 domingo, 5 de fevereiro de 2017 04:40
-
ok ainda estou com um problema no report no metodo Fill, GetData() quando faço o preview da certo mas ao executar no reportviewer retorna um erro no ...this.cadastradoTableAdapter.Fill(this.crasDataSet.cadastrado);
ERRO
An exception of type 'System.Data.ConstraintException' occurred in System.Data.dll but was not handled in user code
Additional information: Falha ao ativar restrições. Uma ou mais linhas contêm valores que violam as restrições non-null, unique ou foreign-key.
- Editado D3292 domingo, 5 de fevereiro de 2017 04:31
-