brshare 0 Denunciar post Postado Janeiro 13, 2007 Ola pessoas como todos sabem o firebird não possui suporte a campos do tipo auto_increment por isso devemos fazer de varias tecnicas para suprir esta falta. Varias sao as sugestões : - criar um generator e uma stored procedure para retornar o valor do generator- criar um generator e um trigger before insert ( mais viavel ), tera o mesmo efeito de um Auto_increment livrando o programador de ficar chamando stored procedures ou gens na programação.optei pela segunda opção por ser mais viavel e seguro em aplicacoes cliente/servidor porem sempre um erro acontece na hora da inserção de registros. Suponho uma tabela clientes que possui os campos cod e nome. O campo cod é auto_increment ( generator + trigger before insert ), tentei com a paleta de conexao DBXPRESS e Zeos porem ambos retornaram erros semelhantes. Os erros são O campo cod e requerido. Varios testes eu fiz e percebi que o trigger não esta sendo ativado e cheguei a conclusao que não e erro no triger nem no generator e sim nas paletas de acesso ou nas minhas configurações das paletas de acesso. pesquisei em varios forums e nada consegui. Alquem ai ja conseguiu e / ou sabe resolver este problema de auto_increment ???????? Compartilhar este post Link para o post Compartilhar em outros sites
Hugo Slepicka 0 Denunciar post Postado Janeiro 14, 2007 E se você tirar o Required do Campo COD??? PS.: Seria necessário que você postasse a msg de erro aqui para que possamos avaliar melhor o seu problema... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
brshare 0 Denunciar post Postado Janeiro 15, 2007 E se você tirar o Required do Campo COD???PS.: Seria necessário que você postasse a msg de erro aqui para que possamos avaliar melhor o seu problema... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gifja tentei isso tambem mas retorna o erro "field value required" Compartilhar este post Link para o post Compartilhar em outros sites
Faccruz 0 Denunciar post Postado Janeiro 15, 2007 E se você tirar o Required do Campo COD???PS.: Seria necessário que você postasse a msg de erro aqui para que possamos avaliar melhor o seu problema... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gifja tentei isso tambem mas retorna o erro "field value required"Esse erro ocorre pq o campo ID não recebe o valor da Trigger...eu passei por esse tipo de erro tbm, resolvi assim:no OnNewRecord da table coloquei o seguinte códigoTForm1.Button1Click(Sender: TObject);beginwith dm.qrygeracodigo do begin close; sql.clear; sql.add('SELECT CAST(GEN_ID(gen_empresas_id,1) AS INTEGER) AS COD FROMRDB$DATABASE'); open;dm.ibtb1.append;dm.ibtb1.FieldByName('CODEMPR').AsInteger:=DM.qrygeracodigo.fieldbyname('COD').asinteger;end; Compartilhar este post Link para o post Compartilhar em outros sites