ROTINA PARA CAPTURAR O SELO DISPONÃVEL
Olá galera!
Galera anexei uma imagem para ficar mais fácil o entendimento da minha ajuda.
Preciso gerar uma rotina em que tenho vários números de selos disponÃveis e que ocorrerá uma situação que vários usuários iram querer o selo da vez, como gerar uma rotina que não conflitem que usuários diferentes não peguem o mesmo número de selo?
Galera anexei uma imagem para ficar mais fácil o entendimento da minha ajuda.
Preciso gerar uma rotina em que tenho vários números de selos disponÃveis e que ocorrerá uma situação que vários usuários iram querer o selo da vez, como gerar uma rotina que não conflitem que usuários diferentes não peguem o mesmo número de selo?
À primeira vista, se você usa sql, mysql, access ou etc, é só selecionar (select) um número que não esteja marcado como em uso (supondo que você tenha um campo para este fim, tipo boolean ou bit);
Aderir este número ao usuário e marcá-lo como em uso para que outro não o utilize;
Verificar o próximo usuário;
Se todos os números já estiverem em uso (se os números forem finitos), mensagem informando que o sistema está lotado ou saturado ou cheio;
.
Em contrapartida, quando o usuário não utilizar mais o número, desmarcá-lo como em uso.
Aderir este número ao usuário e marcá-lo como em uso para que outro não o utilize;
Verificar o próximo usuário;
Se todos os números já estiverem em uso (se os números forem finitos), mensagem informando que o sistema está lotado ou saturado ou cheio;
.
Em contrapartida, quando o usuário não utilizar mais o número, desmarcá-lo como em uso.
A ideia é essa mesmo.
Estou usando SQL Server, se eu fizer algo do tipo, [Ô]select top 1 Numero from TabelaNumeros where bitNumeroDisponivel=0 order by Numero[Ô] ele me trará o da vez, no entanto, se o outro usuário teclar ao mesmo tempo, trará o mesmo número.
Será se eu teria que usar o BeginTransaction?
Estou usando SQL Server, se eu fizer algo do tipo, [Ô]select top 1 Numero from TabelaNumeros where bitNumeroDisponivel=0 order by Numero[Ô] ele me trará o da vez, no entanto, se o outro usuário teclar ao mesmo tempo, trará o mesmo número.
Será se eu teria que usar o BeginTransaction?
Rapaz...
Em todos esses nessa indústria vital isso nunca me aconteceu porque eu sempre coloquei os usuários em uma fila primeiro, depois eu atribuo um número a eles.
Em todos esses nessa indústria vital isso nunca me aconteceu porque eu sempre coloquei os usuários em uma fila primeiro, depois eu atribuo um número a eles.
Tópico encerrado , respostas não são mais permitidas