Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Select Inner Join problemas


renanbg

Pergunta

Estou usando componentes da paleta interbase. O inner join não atualiza traz os nomes dos clientes no dbgrid.

Para que isso ocorra, eu faço esse procedimento

Faço a busca de um cliente no cadastro de clientes

Select nome, idade from clientes
where nome like ed.text

Ao sair do formulario de clientes, fecho a query de clientes.

Aí, ao acessar a tela de contas a receber, faço esse select

Select * from contas a receber cr
inner join clientes cl
on cl.codigo = cr.cod_cliente
order by vencimento

Ocorre que todos os nomes saem em branco, exceto aquele ultimo que pesquisei lá no cadastro de clientes.

Porque, mesmo dando um close, a pesquisa não traz todos resultados?

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

exemplos

SQL INNER JOIN syntax:

SELECT *FROM [TABLE 1] INNER JOIN [TABLE 2]
ON [TABLE 1].[COLUMN NAME 1] = [TABLE 2].[COLUMN NAME 2]

exemplo pratico

Na tabela clientes tenho o campo COD e na tabela veiculos tenho o campo COD_CLIENTE

SELECT * FROM CLIENTES INNER JOIN VEICULOS ON COD = COD.CLIENTE

OU

SELECT * FROM CLIENTES INNER JOIN VEICULOS ON CLIENTES.COD = VEICULOS.COD_CLIENTE

ou veja esse link

https://www.sqlguides.com/sql_inner_join.php

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

O select está correto, o problema acontece quando faço a busca de um cliente no cadastro de clientes. Aparentemente, mesmo fechando a query ao sair do formulario, o filtro que fiz permanece ativo.

Então ao acessar a tela de contas a receber, a busca traz todas contas que selecionei, porém com o nome do cliente em branco, exceto o nome do cliente pesquisado anteriormente,

Editado por renanbg
Link para o comentário
Compartilhar em outros sites

  • 0
  • 0

Agradeço a ajuda Jhonas, mas isso é um problema no filtro da query clientes que fica ativo, mesmo eu fechando ela.

Se eu acessar a tela de contas a receber diretamente, sem passar pela de clientes, tudo da certo.

 

Descobri agora que isso ocorre porque fiz o select usando a propria query de clientes.

Seria correto usar uma query para buscas e outra para gravar/editar/excluir?

Editado por renanbg
Link para o comentário
Compartilhar em outros sites

  • 0

Seria correto usar uma query para buscas e outra para gravar/editar/excluir?

Sim.. 

voce poderia usar o componente UpdateSQL1 ( usando as propriedades DeleteSQL, InsertSQL e ModifySQL )

mas se tiver dificuldade com esse componente, continue a usar a forma como esta acostumado

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Então Jhonas. Já uso o updatesql em conjunto com a query e o datasource para editar, gravar e excluir.

Agora adicionei uma nova query somente para consultas, mas perdi o controle dos botões alterar e cancelar, que eu fazia no evento de onstatechange do datasource que grava.

 

Link para o comentário
Compartilhar em outros sites

  • 0

Eu uso uma 1ª query para pesquisar o registro que eu desejo  (botões -  inserir, alterar, deletar, ou imprimir )

Depois de selecionar o registro, eu passo um campo desse registro como parametro para uma 2ª  query, para trazer para tela  os campos desse registro.

depois para Salvar (botão =>  Ok ) ou Cancelar ( botão => Cancel )  eu uso o ClienteDataSet para essa finalidade, que esta ligado a minha 2ª query

ClienteDataSet1.Post;

ClienteDataSet1.ApplyUpdates(-1);   // Salvar

ou

ClienteDataSet1.Cancel;  // Cancelar

Não tem erro.

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...