FindKey em MySQL?????
Olá pessoal,
Estou precisando fazer um código simples, mas em MySQL não está dando certo. Vejam o código:
O erro acontece já na primeira linha (em vermelho). Vejam o erro:
Como posso corrigir isso?
Grato,
Ilano.
Estou precisando fazer um código simples, mas em MySQL não está dando certo. Vejam o código:
[color=red:2707f587e9]If Not DMDados.TBProfessores.FindKey([DMDados.TBDetProfCodigoDoProfessor.Value]) Then[/color:2707f587e9]
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
O erro acontece já na primeira linha (em vermelho). Vejam o erro:
[Error] UFrmCadDetProfessor.pas(273): Undeclared identifier:´FindKey´
Como posso corrigir isso?
Grato,
Ilano.
Ilanocf
Curtidas 0
Respostas
Poeta Noturno
03/06/2004
Como vai Ilano?
Olha, por que você não tenta começar a trabalhar com o locate? É uma das funções de busca mais utilizada pelos programadores (assim li em uma edição da clubedelphi).
Tenta alterar para este código:
If Not DMDados.TBProfessores.Locate(´campo´, DMDados.TBDetProfCodigoDoProfessor.Value, []) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
Espero ter ajudado nesta!
Um abraço
Poeta Noturno
Olha, por que você não tenta começar a trabalhar com o locate? É uma das funções de busca mais utilizada pelos programadores (assim li em uma edição da clubedelphi).
Tenta alterar para este código:
If Not DMDados.TBProfessores.Locate(´campo´, DMDados.TBDetProfCodigoDoProfessor.Value, []) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
Espero ter ajudado nesta!
Um abraço
Poeta Noturno
GOSTEI 0
Roy
03/06/2004
Olá Colegas!
O código que nosso amigo Poeta Noturno enviou teria que dar certo, não uso o Zeos, portanto não sei qual o problema, mas vc deve estar fazendo algo errado. O único lugar onde achei que poderia haver dúvida seria onde nosso amigo colocou:
If Not DMDados.TBProfessores.Locate(´campo´, DMDados.TBDetProfCodigoDoProfessor.Value, []) Then
´campo´ se refere ao nome do campo em sua tabela por exemplo:
CODIGO
O código que nosso amigo Poeta Noturno enviou teria que dar certo, não uso o Zeos, portanto não sei qual o problema, mas vc deve estar fazendo algo errado. O único lugar onde achei que poderia haver dúvida seria onde nosso amigo colocou:
If Not DMDados.TBProfessores.Locate(´campo´, DMDados.TBDetProfCodigoDoProfessor.Value, []) Then
´campo´ se refere ao nome do campo em sua tabela por exemplo:
CODIGO
GOSTEI 0
Sandra
03/06/2004
Ilano,
Não estaria faltando declarar as units DB, DBTables ou ambas na Uses? De repente...
Não estaria faltando declarar as units DB, DBTables ou ambas na Uses? De repente...
GOSTEI 0
Ilanocf
03/06/2004
Olha só pessoal,
Eu já coloquei DB, DBTables, alterei o código para [b:77ab4b69f4]Locate[/b:77ab4b69f4]:
Mas nada! Então diz:
Eu já coloquei DB, DBTables, alterei o código para [b:77ab4b69f4]Locate[/b:77ab4b69f4]:
If Not DMDados.TBProfessores.Locate([DMDados.TBDetProfCodigoDoProfessor.Value]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
Mas nada! Então diz:
[Error] UFrmCadDetProfessor.pas(289): Ordinal type required
GOSTEI 0
Roy
03/06/2004
Dá uma olhada no seu código, pois o mesmo está errado:
If Not DMDados.TBProfessores.Locate([DMDados.TBDetProfCodigoDoProfessor.Value]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
o certo é:
If Not DMDados.TBProfessores.Locate(´CODIGO´, DMDados.TBDetProfCodigoDoProfessor.Value,[]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
Onde ´CODIGO´ é o nome do campo na tabela.
If Not DMDados.TBProfessores.Locate([DMDados.TBDetProfCodigoDoProfessor.Value]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
o certo é:
If Not DMDados.TBProfessores.Locate(´CODIGO´, DMDados.TBDetProfCodigoDoProfessor.Value,[]) Then
Begin
ShowMessage(´Professor não cadastrado.´);
DBEdit2.SetFocus;
Exit;
End;
Onde ´CODIGO´ é o nome do campo na tabela.
GOSTEI 0