Array
(
)

USAR JOIN ou 2 Consultas Separadas

Ibor Ltda
   - 18 nov 2009

Olá a todos,

Vou exemplificar uma dúvida minha.

Tenho uma Tabela de Cep com (CEP, BAIRRO,LOGRADOURO,IDCIDADE) e uma tabela de Cidade com (IDCIDADE,NOMECIDADE,UF).

Tenho um sistema que faz essa consulta.

SELECT *,CIDADE.NOMECIDADE AS CIDADE,CIDADE.UF FROM CEP
INNER JOIN CIDADE ON (CIDADE.IDCIDADE = CEP.IDCIDADE)
WHERE CEP = @CEP.

Se eu Fizer duas consultas, uma para retornar os ceps e outra para retornar as cidades estaria incorreto? Eu Perderia performance?

SELECT * FROM CEP
WHERE CEP = @CEP.

select * from cidade
where idcidade = @IDCIDADECEP

Já que minha aplicação irá carregar um objeto cidade dentro do objeto cep. Fazendo duas sentenças eu poderia carregar o objeto cidade dentro do cep com os seus próprios métodos. Acho que seria o jeito mais correto para nao ter o acoplamento entre objetos.

Estou pensando errado?

Netasper
   - 19 nov 2009

Ola Ibor,   No conceito de OO, cada tabela(entidade) sua sera um objeto. Portanto vc deve criar classes separadas para cada um com consultas separadas tb por classes. Mas lembrando que que a coleção de CEPS deve ser um atributo da classe Cidade. deu para entender?   Caso não tenha entendido, veja algumas video aulas daqui do devmedia sobre Orientação a Objeto, vão te esclarecer tudo isto que como montar um sistema N camadas.   Quanto a questão de performance, não se preocupe com isto, fazendo este tipo de join ou não, a diferença do custo da query é muito baixo.   Abraços

0
|
0