Fórum Verificação de Valor Unico #211604
04/02/2004
0
procedure TFrmUsuarios.FldIdentificacaoExit(Sender: TObject);
var
RegNick: String;
begin
RegNick:= FldIdentificacao.Text;
If (Modulo.TbUsuarios.Locate(´Identificacao´, RegNick, [loPartialKey])) Then
begin
(Mensagem(´Identificação já existente. Duplicação indeferida!´));
FldIdentificacao.SelText;
Exit;
end
Else
begin
Modulo.TbUsuarios.Post;
Modulo.TbUsuarios.Refresh;
FldNome.SetFocus;
end;
end;
O problema eh q em decorrencia do campo Autonumeração, ele nao permite q o indice ou chave primaria seja valor nulo, ocorrendo um erro. Esse valor eh nulo pois ainda nao foi salvo na tabela. Eu gostaria de saber como eu posso fazer essa verfifcação sem que ocorra erros...
Valeu!!!
Diorgenes175
Curtir tópico
+ 0Posts
04/02/2004
Djjunior
outra coisa crie outra query pra fazer a pesquisa de nomes duplicados, vai melhorar um bocado
tipo:
select Identificacao from tabela where Identificacao = :nickname
e então coloque
query1.close;
query1.parambyname(´nickname´).asstring := edit1.text;
query1.open;
if not query1.isempt then
showmessage(´nick name já existe)...
Espero ter ajudado
Gostei + 0
04/02/2004
Diorgenes175
Ex.:
query1.parambyname(´nickname´).asstring := edit1.text;
Estou usando TADOQuery, pois a Base de Dados é MS Access, e nas outras vezes q tentei usar essa função, ocorria um erro dizendo parametro (aqui nesse exemplo seria ´nickname´) não existente. Como eu posso fazer para que não ocorra este erro??? Me dá uma orientação quanto a isso...
Valeu a Ajuda!!!
Gostei + 0
06/02/2004
Djjunior
seguinte o nome do parametro é o que vem seguido com : tipo
select *
from tabela
where campo = :parametro
no ado eu viz algo do tipo:
ADOQuery1.Close;
ADOQuery1.Parameters[0].Value := Edit1.Text;
ADOQuery1.Open;
obs.: para saber o nome que o seu parametro ou o indice dele verifique a propriedade parameters, nomalmente (pelo menos com o BDE) é bom vc aproveitar e setar o tipo de dados desse parametro (tipo string, data etc).
espero ter ajudado
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)