unable to find record. no key specified
23/05/2003
0
acessado com dbexpress
SQLDataSet + DataSetProvider + ClientDataSet + DataSource
estava dando o erro:
record not found or changed by another user
configurei os providerflags dos campos e updatemode do provider, parou de dar esse erro, mas aparece outro:
unable to find record. no key specified.
Como posso resolver esse problema?
obrigada,
K-ROL
K-rol
Post mais votado
01/10/2008
acessado com dbexpress
SQLDataSet + DataSetProvider + ClientDataSet + DataSource
estava dando o erro:
record not found or changed by another user
configurei os providerflags dos campos e updatemode do provider, parou de dar esse erro, mas aparece outro:
unable to find record. no key specified.
Como posso resolver esse problema?
obrigada,
K-ROL[/quote:9ec5f26a87]
realmente é necessário configurar, no sqldataset ou no datasetprovider, o campo chave de modo a ficar com a opção pfInkey = True na propriedade Providerflags.
e o dataset provider deve ter a propriedade UpdateMode para upWhereKeyOnly.
ainda assim talvez você continue recebendo uma mensagem parecida, se você tiver os campos chave com autoincremento.
imagine o campo id_cliente. quando você está incluindo o registro, esse registro em edição não tem um valor no campo chave (ou tem um valor temporário). depois de efetivada a gravação física no banco de dados (commit), o registro recebe o id definitivo (autoincremento do banco), que é diferente daquele que o dbExpress conhecia antes do commit. por isso o erro ´unable to find record´.
Emerson Nascimento
Mais Posts
23/05/2003
Marcelo.c
26/05/2003
K-rol
as minhas tabelas todas tem chave primaria....
inclusive jah tentei excluir e definir novamente
mesmo assim o problema continua
25/01/2006
Raptrap
as minhas tabelas todas tem chave primaria....
inclusive jah tentei excluir e definir novamente
mesmo assim o problema continua[/quote:4de29abd82]
Tenta mudar a propriedade providerFlags dos campos que forem chave primária: pfInKey := False;
25/01/2006
Rômulo Barros
Tenta mudar a propriedade providerFlags dos campos que forem chave primária: pfInKey := False;[/quote:242d222cd1]
É o inverso ! Configure-as para true, tanto nos fields do CDS quanto nos fields do seu SQLDataSet.
[b:242d222cd1]Obs:[/b:242d222cd1] a configuração é mais importante no SQLDataSet
01/10/2008
Mazzi
Clique aqui para fazer login e interagir na Comunidade :)