pestana. Postado Outubro 16, 2016 Denunciar Share Postado Outubro 16, 2016 Bom dia! Tenho um sistema aqui que foi desenvolvido em Delphi7 + IBX + Firebird 2.0. Eu gostaria de saber se é possível configurar no IBTransaction o modo de acesso Read Only no nível de isolamento Read Committed? Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 17, 2016 Denunciar Share Postado Outubro 17, 2016 No Transaction Editor coloque em Settings read read_committed rec_version nowait ou voce pode colocar isso a nivel de tabela ( Read Only ) e liberar para escrita quando for necessario abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pestana. Postado Outubro 17, 2016 Autor Denunciar Share Postado Outubro 17, 2016 (editado) meu caro amigo eu andei pesquisando e encontrei o parâmetro isc_tpb_read que é o modo de acesso Read Only. read é o mesmo do que a isc_tpb_read na TPB? ou seja, é a mesma coisa fazer isso: isc_tpb_read read_committed rec_version nowait Obrigado pela ajuda! Editado Outubro 17, 2016 por pestana. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 17, 2016 Denunciar Share Postado Outubro 17, 2016 read é o mesmo do que a isc_tpb_read na TPB? não exatamente, mas voce pode usar dessa maneira para evitar a possibilidade de conflitos de bloqueio entre duas transações que acessam o mesmo banco de dados isso serve para determinar o modo de nivel de isolamento e acesso de cada transação exemplo: vamos supor que t1 e t2 sejam transações de gravação de dados que serão executadas em sua tabela por 2 usuarios distintos que estão usando a mesma aplicação e o mesmo registro se voce usar isc_tpb_read_commited com acesso isc_tpb_write haverá um conflito quando tentam atualizar as mesmas linhas ... nesse caso se t1 e t2 tiverem acesso isc_tpb_read, eles nunca vão entrar em conflito com outras transações no seu caso isc_tpb_read read_committed rec_version nowait voce pode usar dessa maneira, mas os dados serão sobrescritos, se 2 ou mais usuários estiverem usando o mesmo registro exemplos de uso: https://sourceforge.net/p/zeoslib/code-0/3538/ abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pestana. Postado Outubro 18, 2016 Autor Denunciar Share Postado Outubro 18, 2016 (editado) Jhonas, eu esqueci de comentar que esta transação é somente leitura, ou seja não pode gravar dados em tabelas. eu posso usar desta maneira já que são somente leituras? acredito que neste caso não haverá conflitos, é isso mesmo? o parâmetro isc_tpb_read é do modo de acesso Read Only, é isso mesmo pelo que andei pesquisando?. isc_tpb_read read_committed rec_version nowait Editado Outubro 18, 2016 por pestana. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 18, 2016 Denunciar Share Postado Outubro 18, 2016 já que a transação é somente leitura, pode usar dessa maneira, sem problema abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pestana. Postado Outubro 18, 2016 Autor Denunciar Share Postado Outubro 18, 2016 Muito obrigado Jhonas! quero ver se eu entendi... eu andei observando que o default de modo de acesso do isolamento Read Committed é de escrita e leitura (isc_tpb_write), esta correto? ou seja, se eu usar a configuração padrão Read Committed na Transaction Editor fica habilitado para escrita e leitura... read_committed rec_version nowait Agora se eu quero que a transação fique como somente leitura é só acrescentar o parâmetro isc_tpb_read em Settings na Transaction Editor, ficando assim: isc_tpb_read read_committed rec_version nowait esta correto o raciocínio né? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 18, 2016 Denunciar Share Postado Outubro 18, 2016 na verdade, sua aplicação ficará disponivel para escrita, mas como voce não vai gravar nenhum dado ( ou seja voce não vai usar nenhum comando para esta finalidade ) então voce não vai ter nenhum conflito nas transações de leitura. voce pode ter varios usuarios vendo o mesmo registro sem problemas. abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pestana. Postado Outubro 18, 2016 Autor Denunciar Share Postado Outubro 18, 2016 (editado) na verdade, sua aplicação ficará disponivel para escrita,... Você esta se referindo ao modo padrão do isolamento Read Committed (read_committed, rec_version, nowait)? Editado Outubro 18, 2016 por pestana. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 18, 2016 Denunciar Share Postado Outubro 18, 2016 sim .... entretando, se voce vai usar a aplicação somente para leitura, não tem nenhum problema abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pestana. Postado Outubro 18, 2016 Autor Denunciar Share Postado Outubro 18, 2016 OK Jhonas eu entendi perfeitamente, mais uma vez, muito obrigado pela a sua ajuda! abraço! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
pestana.
Bom dia!
Tenho um sistema aqui que foi desenvolvido em Delphi7 + IBX + Firebird 2.0.
Eu gostaria de saber se é possível configurar no IBTransaction o modo de acesso Read Only no nível de isolamento Read Committed?
Obrigado!
Link para o comentário
Compartilhar em outros sites
10 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.