Relação entre tabelas no DBGrid
24/04/2014
0
Estou com uma dúvida sobre um código em SQL para poder relacionar 2 tabelas em um único dbgrid; Sei que no fórum já deve ter alguns tópicos sobre esse assunto, mas não consegui resolver meu problema com eles.
É o seguinte, tenho as seguintes tabelas, com os seguintes campos respectivamente:
tab_controle ===> id_controle(auto), id_coordenador(num), data, hora, obs.
tab_login ===> id_login(auto), nome, login, senha.
No formulário principal contém um DBGrid com o dataset ligado em um ADOQuery cujo SQL busca a tabela de controle:
SELECT * FROM tab_controle
Somente isso... Queria que no dbgrid ao envés de aparecer o id_coordenador, aparecesse o Nome, caso o id_coordenador for igual ao id_login.
Estou usando BD Access, ADOConection, ADOQuery.
Obrigado, att, Bruno.
Bruno Souza
Posts
24/04/2014
Marcos Gandin
A primeira coisa que você deve fazer é uma Foreign Key entre as tabelas tab_controle e tab_login.
Após isso é só fazer o SQL da seguinte maneira:
Select tc.id_controle, tl.nome, tc.data, tc.hora, tc.obs
From tab_controle tc, tab_login tl
Where tc.id_coordenador = tl.id_login
24/04/2014
Bruno Souza
E esse código SQL, eu devo colocar na propriedade SQL da query ?
24/04/2014
Fabio
E esse código SQL, eu devo colocar na propriedade SQL da query ?
Bruno chave estrangeira é simples
ALTER TABLE NOME_TABELA_QUE_FICA_CHAVE ADD CONSTRAINT FK_NOME_DA_SUA_CHAVE FOREIGN KEY (CODIGO)
REFERENCES NOME_OUTRA_TABELA(CODIGO);
Clique aqui para fazer login e interagir na Comunidade :)