GEN_ID com a DLL dbexpUIBfire15
Olá,
tenho uma dúvida, utilizo o dbexpress com o Firebird 1, e estou migrando para o Firebird 2, e agora estou testando a DLL dbexpUIBfire15, e nos testes percebi que quando quero ler e incrementar um determinado GENERATOR ( SELECT GEN_ID( NOME_GENERATOR, 1) FROM rdb$Database ) e as vezes ocorre um erro e outras vezes não.
Access violation at address 03AE58E7 in module ´dbexpUIBfire15.dll´. Read of address 00000000
mas tenho certeza absoluta que no Firebird 1 estava funcionando, pois tenho clientes q estão utilizando e nunca ocorreu um erro.
Li algo sobre o SEQUENCE ser mais adequado, pois o GENERATOR é da sintaxe do InterBase, mas se tiver que mudar do GENERATOR para SEQUENCE, tenho + ou - 200 GENERATORs, dai fica complicado.
Gostaria d saber se alguém tem alguma solução e/ou explicação para isto?
Obrigado.
tenho uma dúvida, utilizo o dbexpress com o Firebird 1, e estou migrando para o Firebird 2, e agora estou testando a DLL dbexpUIBfire15, e nos testes percebi que quando quero ler e incrementar um determinado GENERATOR ( SELECT GEN_ID( NOME_GENERATOR, 1) FROM rdb$Database ) e as vezes ocorre um erro e outras vezes não.
Access violation at address 03AE58E7 in module ´dbexpUIBfire15.dll´. Read of address 00000000
mas tenho certeza absoluta que no Firebird 1 estava funcionando, pois tenho clientes q estão utilizando e nunca ocorreu um erro.
Li algo sobre o SEQUENCE ser mais adequado, pois o GENERATOR é da sintaxe do InterBase, mas se tiver que mudar do GENERATOR para SEQUENCE, tenho + ou - 200 GENERATORs, dai fica complicado.
Gostaria d saber se alguém tem alguma solução e/ou explicação para isto?
Obrigado.
Lehapan
Curtidas 0
Respostas
Catunda
16/04/2007
não sei qto ao sequenc mas eu utilizo o firebird1.5 e nunca tive problemas com o generator, tanto nos comandos select gen_id(nome_gen,1) from rdb$database como nas triggers.
Atualmente estou utilizando mais o incremento dos generators nas triggers.
No meu caso, utilizo dbexpressl, sqldataset, datasetprovider e clientdataset. Inicializo a chave primaria com 0 no evento onnewrecord do clientdataset e pronto.
Veja se vc está utilizando mesmo a fbclient.dll pois a gds32.dll não é muito adequada ao firebird.
Atualmente estou utilizando mais o incremento dos generators nas triggers.
No meu caso, utilizo dbexpressl, sqldataset, datasetprovider e clientdataset. Inicializo a chave primaria com 0 no evento onnewrecord do clientdataset e pronto.
Veja se vc está utilizando mesmo a fbclient.dll pois a gds32.dll não é muito adequada ao firebird.
GOSTEI 0
Lehapan
16/04/2007
tb utilizo dbexpress, sqldataset, datasetprovider e clientdataset e estou usando a biblioteca fbclient.dll,
Inicializo a chave primaria no evento onBeforePost do clientdataset e pronto, pois não utilizo trigger para chave primária por outros motivos q não vem aos caso.
Mas o que me intriga é que este erro ocorre somente as vezes, mesmo eu sempre fazendo os mesmo procedimentos de testes e acompanhando passo-a-passo ele funciona e as vezes não funciona.
Inicializo a chave primaria no evento onBeforePost do clientdataset e pronto, pois não utilizo trigger para chave primária por outros motivos q não vem aos caso.
Mas o que me intriga é que este erro ocorre somente as vezes, mesmo eu sempre fazendo os mesmo procedimentos de testes e acompanhando passo-a-passo ele funciona e as vezes não funciona.
GOSTEI 0