Javafree
Página Inicial do Fórum > Banco de Dados - JDBC / SQL

Preciso de ajuda para fazer um select que funcione.



Criar novo tópico   Responder tópico


  1. lopes380
    Posts:4


    Comment Arrow

    Publicado em: 23/09/2014 20:03:13

    Boa noite. Sou aprendiz em java e mysql. Quando faço consulta direta no bd funciona perfeitamente, quando tento usar o select no meu projeto não funciona, se alguém puder me ajudar fico agradecido já faz 3 dias que estou tentando acertar.
    Segue partes do meu projeto e minhas tabelas mysql



  1. Yelden
    Posts:200


    Comment Arrow

    Publicado em: 04/10/2014 23:23:03

    Você recebe qual exception?



    1° Você precisa analisar essa modelagem,
    pelo que entendi, vocÊ está relacionando a tabela endereços com clientes, e quer receber os endereços de um cliente qualquer, certo?

    Analisando seu problema, pode-se afirmar que um cliente, pode possuir um único endereço, enquanto que um endereço, pode possuir diversos clientes.

    Logo, a sua relação endereco X cliente é uma relação de n pra 1.
    nesse tipo de relação, a tabela "1", no caso "clientes, deve receber a chave da tabela "n", no caso endereço.

    Logo, sua tabela cliente deve ter uma chave estrangeira da tabela endereço, indicando a qual endereco esse cliente está relacionado:


    CREATE TABLE cliente (
    idCliente int PRIMARY KEY,
    idEndereco int,
    cep int,
    cnpg varchar(15),
    etc...
    CONSTRAINT fk_endereco FOREIGN KEY(idEndereco)
    REFERENCES endereco(idEndereco)
    )


    Desse modo, sua tabela cliente terá um campo relacionando com os endereços.

    Feito isso, basta utilizar o JOIN para pesquisar o endereço que pertence a cada cliente:

    SELECT * FROM endereco JOIN cliente ON endereco.idEndereco = cliente.idEndereco WHERE cliente.cep = ?

    Qualquer duvida posta ae,
    boa sorte



  1. lopes380
    Posts:4


    Comment Arrow

    Publicado em: 06/10/2014 18:00:27

    Muito obrigado pela colaboração Yelden, após várias tentativas consegui o que estava pretendendo por tanto pelo menos este problema já está resolvido.



  1. Relacionados