Fórum Problemas com relacionamento. #163220
29/05/2003
0
Estou usando o delphi 6 e interbase 6.
Preciso fazer um relacionamento e não estou conseguindo:
Tenho um banco de dados chamado MOVIMENTO com as seguintes tabelas:
MAQUINAS E USUARIOS
Create table MAQUINAS
(
codmaq integer not null,
micro varchar(15),
ip varchar(15),
usuario varchar(15),
primary key(codmaq)
);
Create table USUARIOS
(
codusu integer not null,
usuario varchar(15);
senha varchar(15);
nomecompleto varchar(50);
primary key (codusu)
);
As tabelas são acessadas com Ibdatabase, IbTransaction, Ibdataset e Datasource. Uso dbgrid para mostrar as tabelas no form.
Meu problema é o seguinte:
Preciso que quando eu mande abrir a tabela USUARIOS mostre apenas o registro correspondente ao USUARIO que estiver gravado no campo USUARIO da tabela MAQUINAS.
Como eu faço isso?
Preciso fazer um relacionamento e não estou conseguindo:
Tenho um banco de dados chamado MOVIMENTO com as seguintes tabelas:
MAQUINAS E USUARIOS
Create table MAQUINAS
(
codmaq integer not null,
micro varchar(15),
ip varchar(15),
usuario varchar(15),
primary key(codmaq)
);
Create table USUARIOS
(
codusu integer not null,
usuario varchar(15);
senha varchar(15);
nomecompleto varchar(50);
primary key (codusu)
);
As tabelas são acessadas com Ibdatabase, IbTransaction, Ibdataset e Datasource. Uso dbgrid para mostrar as tabelas no form.
Meu problema é o seguinte:
Preciso que quando eu mande abrir a tabela USUARIOS mostre apenas o registro correspondente ao USUARIO que estiver gravado no campo USUARIO da tabela MAQUINAS.
Como eu faço isso?
Michele
Curtir tópico
+ 0
Responder
Posts
29/05/2003
Carlo Vinícius
Michele,
Tente usar um componente IBQuery, passando para a propriedade SQL a seguinte instrução:
Select * From USUARIOS
Where Usuario IN (Select Usuario From MAQUINAS)
Pelo que entendi do que descreveu, acho que é isso que você estava precisando.
Só uma dica: você relacionou as duas tabelas pelo campo ´USUARIO´, que parace ser o nome deste usuário. O mais correto é relacioná-las pelo campo ´CODUSU´, que é o código deste usuário. :wink:
Espero ter ajudado!
Tente usar um componente IBQuery, passando para a propriedade SQL a seguinte instrução:
Select * From USUARIOS
Where Usuario IN (Select Usuario From MAQUINAS)
Pelo que entendi do que descreveu, acho que é isso que você estava precisando.
Só uma dica: você relacionou as duas tabelas pelo campo ´USUARIO´, que parace ser o nome deste usuário. O mais correto é relacioná-las pelo campo ´CODUSU´, que é o código deste usuário. :wink:
Espero ter ajudado!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)