SEQUENCIAL SQL-SERVER
Prezados amigos, boa noite.
Preciso resolver a seguinte situação:
Tenho uma tabela em SQL a qual tem uma chave primária sendo: UNID + NUMREG
onde UNID é um campo Caracter de 2 e NUMREG um campo Numerico.
O problema é que tenho vários usuários cadastrando simultaneamente num Form
e gravando nessa tabela, então preciso que esse sequencial seja automático
a medida que cada usuário grave no banco. Como resolveria essa situação?
Existe alguma função que eu posso dar um LOCK (bloquear o registro) para poder
cadastrar ou alterar o o registro o mesmo tempo por diversos usuários?
Na minha base precisará ficar assim:
UNID - NUMREG
A 1
A 2
A 3
B 1
B 2
B 3
e assim por diante, mas imagenem vários usuários cadastrando ao mesmo tempo.
Portanto preciso que esse sequencial seja totalmente automático.
Grato desde já a todos
ACG
Preciso resolver a seguinte situação:
Tenho uma tabela em SQL a qual tem uma chave primária sendo: UNID + NUMREG
onde UNID é um campo Caracter de 2 e NUMREG um campo Numerico.
O problema é que tenho vários usuários cadastrando simultaneamente num Form
e gravando nessa tabela, então preciso que esse sequencial seja automático
a medida que cada usuário grave no banco. Como resolveria essa situação?
Existe alguma função que eu posso dar um LOCK (bloquear o registro) para poder
cadastrar ou alterar o o registro o mesmo tempo por diversos usuários?
Na minha base precisará ficar assim:
UNID - NUMREG
A 1
A 2
A 3
B 1
B 2
B 3
e assim por diante, mas imagenem vários usuários cadastrando ao mesmo tempo.
Portanto preciso que esse sequencial seja totalmente automático.
Grato desde já a todos
ACG
ACGGERMED, em primeiro lugar, sempre use um campo ID com auto-numeração, como chave primária, SEMPRE!!
Mesmo que parece desnecessário, lá na frente você acabará encontrando vantagens no seu uso.
O seu problema é clássico, tlz até já tenha encontrado a solução.
Se vc usar ADO existe um controle de Bloqueio que permite vc controlar isso.
A segunda solução depende do BD que você está usando. Seria vc criar uma StoreProcedure que faça o serviço pra vc direto no banco.
Mesmo que parece desnecessário, lá na frente você acabará encontrando vantagens no seu uso.
O seu problema é clássico, tlz até já tenha encontrado a solução.
Se vc usar ADO existe um controle de Bloqueio que permite vc controlar isso.
A segunda solução depende do BD que você está usando. Seria vc criar uma StoreProcedure que faça o serviço pra vc direto no banco.
Tópico encerrado , respostas não são mais permitidas