Normalmente o uso de "lock pessimista" n�o � recomendado em sistemas web.
Para fazer isso vc teria que fazer algo executar um statement com lock
("select...for update" for exemplo) e guardar o statement e a conexao com o
banco na sess�o do usuario; por�m isso iria gerar v�rios problemas. Por
exemplo o sistema teria que manter uma conexao exclusiva para o usuario todo
o tempo em que ele estivesse editando os dados, que � um grande desperd�cio
de recursos, ou pior, se o usu�rio fechar o browser, teria que esperar a
sessao dele expirar e a conexao ser liberada pelo garbage collector para o
registro se tornar dispon�vel novamente. Uma forma poss�vel de se resolver
isso seria o uso de "lock otimista" com serializa��o. Cada registro tem um
n�mero de s�rie e cada vez que ele � alterado esse n�mero serial alterado
tb. Qdo o sistema fosse gravar os dados iria comparar o n�mero de s�rie que
tem qdo fez a leitura do registro inicialmente com o que tem no banco no
momento do grava��o. Se forem diferentes significa que outro usu�rio alterou
o registro. Alguns bancos de dados ja implementam esse tipo de serializa��o
autom�tica (TRANSACTION_SERIALIZABLE).[]'s Daniel Carneiro ----- Original Message ----- From: "Daniel C�cero Amadei" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, January 16, 2003 6:17 PM Subject: [enterprise-list] Lock de registro > Amigos, > > Existe alguma forma de executar um lock em um registro em um sistema WEB? > Por exemplo, ao tentar editar um registro, se ele estiver sendo editado por > outro usu�rio o sistema n�o permitir? > > []'s > Daniel C. Amadei > Sun Certified Java Programmer - Platforms 1.2 & 1.4 > > _________________________________________________________________ > MSN Messenger: converse com os seus amigos online. > http://messenger.msn.com.br > > > --------------------------------------------------------------------- > Para cancelar a subscri��o, envie mensagem para: [EMAIL PROTECTED] > Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED] > --------------------------------------------------------------------- Para cancelar a subscri��o, envie mensagem para: [EMAIL PROTECTED] Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]
