vc ta inserindo zero duas vezes como disse o colega abaixo assim da erro msm qualquer codigo repetido da erro
este codigo para o botao novo(ou inserir ) Cdstabela.Close; Cdstabela.Params[0].AsInteger := (-1); Cdstabela.Open; Cdstabela.Append; Cdstabelacd_chave.asinteger := cd_novoquegereidealgumaforma ; este para o botao gravar Cdstabela.Post; Cdstabela.ApplyUpdates(0); obs esta minha tabela nao esta com campo auto incremento e eu coloquei um auxilio pra gerar codigo novo e so pensar na tua forma de gerar o codigo novo que nao podera se repetir espero ter ajudado ----- Original Message ----- From: "Vitor Redes" <[EMAIL PROTECTED]> To: <delphi-br@yahoogrupos.com.br> Sent: Tuesday, December 11, 2007 2:48 PM Subject: RES: [delphi-br] SOCORRO: Gravar dados no Banco de Dados Não sei como seu banco está configurado, mas se você gravar dois registros com o valor 0, o banco com certeza vai retornar violação de chave né... Dê mais informações, está utilizando trigger? Algum tipo de função no banco? Vitor. _____ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de william.designer Enviada em: terça-feira, 11 de dezembro de 2007 11:39 Para: delphi-br@yahoogrupos.com.br Assunto: [delphi-br] SOCORRO: Gravar dados no Banco de Dados tenho os seguintes componentes em um Data module, um SQLConection, um SQLDataSet{SQLcadLista}, um DataSetProvider{DSPcadLista} e um ClientDataset{CDScadLista} Criei um formulario a partir dos campos do meu ClienteDataset... e Criei um botão para Salvar e coloque o seguinte código no Onclick do botão.. if DNNConexao.CDScadListaProgCOD.IsNull then begin DNNConexao.CDScadListaProgCOD.Value := 0; DNNConexao.CDScadListaProg.ApplyUpdates(-1); DNNConexao.CDScadListaProg.Open; DNNConexao.CDScadListaProg.Close; end else DNNConexao.CDScadListaProg.ApplyUpdates(-1); Fechar:=true; Close; O primeiro registro ele salva normal...mas quando tenho cadastrar um novo registro ele dá a seguinte mensagem... Project NomeProjeto.exe raised exception class EDBClient with message 'KeyViolation.'. Process stop. Use step or run to continue. Será que alguem pode me ajudar onde eu estou errando... [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Links do Yahoo! Grupos -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.17.1/1181 - Release Date: 11/12/2007 17:05