Relacionamento

Delphi

10/02/2003

Estou com este problema se vc´s puderem me ajudar:
Tenho um relacionamento de um Cliente que pode ter vários Telefones e que pode estar trabalhando em várias Empresas, logo gostaria de exibir todos os Telefones do cliente e suas respectivas Empresas. (Tentei fazer o join com todas as tabelas e aparecem registro duplicados desnecessários), está query está funcionando somente para os telefones...gostaria de incluir a(s) empresa(s) também!
O distinct também não deu certo!

select
cli.cliCodigo,
cli.cliNome,
con.conDescricao
from
cliente as cli,
contato as con
where
con.cliCodigo = cli.cliCodigo and
day(cli.cliDataNascimento) = :parDia and
month(cli.cliDataNascimento) = :parMes
group by
cli.cliCodigo,
cli.cliNome,
con.conDescricao
order by
cli.cliCodigo

Não posso utilizar join´s pq estou trabalhando no Access.

Desde já agradeço.


Leafar

Leafar

Curtidas 0

Respostas

Anonymous

Anonymous

10/02/2003

Vc fez o diagrama de entidade-relacionamento correto?
Vc terá que fazer 3 tabelas(clientes,telefones e empresas)
onde a tabela telefones receberá o codigo do cliente como chave estrangeira e a tabela empresas receberá tb o código do cliente como chave estrangeira,assim vc poderá ter a informação que vc necessita...
Boa semana!!!


GOSTEI 0
Leafar

Leafar

10/02/2003

O diagrama está correto, mas quando eu executo a query retorna tuplas indesejadas, como estas 2 primeiras:

(Nome) (Contato) (Empresa)
João Pedro 1234-5678 MS
João Pedro 1234-5678 Oracle
Carlos carlos@terra.com.br Apple

ou seja, se o cliente Trabalhar em + de 1 Empresa ou possuir mais de um Telefone quando faço a junção da tabela Cliente_Contato_Empresa aparece este cliente 2 vezes.

Naum sei se tem jeito de separar, pois a resposta parece certa para o banco mas errada para o cliente :(


GOSTEI 0
POSTAR