unable to find record. no key specified

23/05/2003

0

estou usando mysql 3.23.52
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

K-rol

Responder

Post mais votado

01/10/2008

[quote:9ec5f26a87=´K-ROL´]estou usando mysql 3.23.52
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

Emerson Nascimento
Responder

Mais Posts

23/05/2003

Marcelo.c

Verifique se todas as tabelas tem a chave primária definida.


Responder

23/05/2003

K-rol

todas as tabelas tem chave primaria


Responder

26/05/2003

K-rol

serah q ninguem passou por esse problema antes e sabe como resolve-lo.....
as minhas tabelas todas tem chave primaria....
inclusive jah tentei excluir e definir novamente
mesmo assim o problema continua


Responder

25/01/2006

Raptrap

[quote:4de29abd82=´K-ROL´]serah q ninguem passou por esse problema antes e sabe como resolve-lo.....
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;


Responder

25/01/2006

Rômulo Barros

[quote:242d222cd1=´K-ROL´]serah q ninguem passou por esse problema antes e sabe como resolve-lo..... as minhas tabelas todas tem chave primaria.... inclusive jah tentei excluir e definir novamente mesmo assim o problema continua


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


Responder

01/10/2008

Mazzi

Realmente colocar tudo true!, exceto os campos que não sao chaves e nao fazem parte da tabela principal.


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar