Em Qui, 2009-01-29 às 12:31 -0700, [email protected] escreveu: > > > On Thu, 29 Jan 2009 17:23:31 -0200, Jota <[email protected]> wrote: > > Olá, > > > > Conforme o Coutinho disse, o psycopg trabalha com o modo auto commit > > false, isso significa que você tem que forcar um commit após cada > > instrução de modificação (insert/update/delete). > > > > Desconheco o Python, mas acredito que exista algum arquivo de > > configuração para modificar este parâmetro. > > se nao me engano: > connection.auto_commirt = true
Creio não ser necessário, pois realizo o commit a cada inserção ou alteração, a não ser que exista alguma diferença no comportamento. O detalhe que observei é que o commit e realizado na conexão e no cursor: conexao.cursor.execute(sql) conexao.commit() Talvez eu tenha que realizar no cursor, mas para isto creio que tem a haver com o serialize, que não consigo passar como parâmetro ao realizar a conexão. Antonio. > > :) > > > > > Outra coisa que você poderia verificar é o nível de isolamento de > > transação que você está utilizando. Os níveis são read committed e > > serializable. Você tem como verificar isso? > > > > []s > > > > > > > > 2009/1/29 Antonio Prado <[email protected]>: > >> Em Qui, 2009-01-29 às 17:07 -0200, Jota escreveu: > >>> Olá, > >>> > >>> Qual nível de transação você está utilizando? Serializable? > >> > >> Estou estabelecendo a conexão da seguinte forma: > >> conexao = psycopg.connect("host=host dbname=db user=usuario") > >> > >> Devo acrescentar algum parâmetro? > >> > >> > >> Antonio > >> > >> > >> > >>> > >>> []s > >>> > >>> 2009/1/29 Antonio Prado <[email protected]>: > >>> > O problema: > >>> > > >>> > O sistema está aberto em duas seções distintas. > >>> > Um usuário realiza uma alteração em um determinado cadastro. > >>> > Esta alteração não se torna visível na outra seção, > >>> > fazendo-se necessário fechar a aplicação e abrir novamente. > >>> > > >>> > > >>> > A aplicação (Python): > >>> > > >>> > A conexão com o banco de dados PostgreSQL é realizada utilizando o > >>> > psycopg, na abertura do aplicativo: > >>> > > >>> > import psycopg > >>> > conexao = psycopg.connect("host=%s dbname=%s user=%s" %(host, dbname, > >>> > user)) > >>> > > >>> > > >>> > Quando uma rotina realiza um alteração na base de dados: > >>> > > >>> > conexao.cursor.execute(sql) > >>> > conexao.commit() > >>> > > >>> > > >>> > > >>> > O que é necessário ser alterado no processo de conexão e > > gravação para > >>> > que as alterações sejam visualizadas pelas outras conexões? > >>> > > >>> > > >>> > Se alguém pude ajudar, desde já, muito obrigado. > >>> > > >>> > > >>> > > >>> > Antonio. > >>> > -- > >>> > Antonio Prado > >>> > (62) 8174 4383 > >>> > (62) 3278 0111 > >>> > www.antonioprado.eti.br > >>> > [email protected] > >>> > > >>> > > >>> > _______________________________________________ > >>> > pgbr-geral mailing list > >>> > [email protected] > >>> > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >>> > > >>> > >>> > >>> > >> -- > >> Antonio Prado > >> (62) 8174 4383 > >> (62) 3278 0111 > >> www.antonioprado.eti.br > >> [email protected] > >> > >> > >> _______________________________________________ > >> pgbr-geral mailing list > >> [email protected] > >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >> > > > > > > > > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- Antonio Prado (62) 8174 4383 (62) 3278 0111 www.antonioprado.eti.br [email protected] _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
