Problemas com Generator IB/DBExpress!!
Pessoal, estou utilizando triggers nas tabelas e acessando através de DBExpress, mas ao inserir um novo registro, o aplicativo diz que o campo ID não pode conter um valor nulo. Já procurei alguma propriedade Generator do SimpleDataset, mas não encontrei. Se alguém souber uma solução, agradeço.
Earmarques
Curtidas 0
Respostas
Allan
09/06/2003
No evento onnewrecord eu uso por exemplo :
Dataset.FieldByName(´campoId´).Value := (DataSet.RecordCount * -1);
Isso quando depois eu vou gerar um valor pro campoId, e na minha aplicação como esse campo não pode ser nulo , eu jogo um valor temporário .
Dataset.FieldByName(´campoId´).Value := (DataSet.RecordCount * -1);
Isso quando depois eu vou gerar um valor pro campoId, e na minha aplicação como esse campo não pode ser nulo , eu jogo um valor temporário .
GOSTEI 0
Ovidio
09/06/2003
Olá, garoto.
Este problema é resolvido assim, crie o campo na tabela com uma trigger e um generator sendo o campo do tipo integer.
No programa quando você usar o método insert, você deve setar o generator com o valor max do codigo na tabela.
Quando você for dar o comando insert via sql, você não menciona o codigo que é a chave primaria da tabela e ele automaticamente gera o código automaticamente.
Se não funcionar, mande-me um e-mail que mando um exemplo para você.
Falo garoto, boa sorte para você.
jrvecchi@zipmail.com.br
Este problema é resolvido assim, crie o campo na tabela com uma trigger e um generator sendo o campo do tipo integer.
No programa quando você usar o método insert, você deve setar o generator com o valor max do codigo na tabela.
Quando você for dar o comando insert via sql, você não menciona o codigo que é a chave primaria da tabela e ele automaticamente gera o código automaticamente.
Se não funcionar, mande-me um e-mail que mando um exemplo para você.
Falo garoto, boa sorte para você.
jrvecchi@zipmail.com.br
GOSTEI 0