1-Copiar os valores das posição 1 e 2 para a mposição 1 e 2
2-Esperar 5 minutos
3-Se as (posição1 = mposição1 e posição2 = mposição2 e lugar = mlugar onde o nome=nome) tempo = tempo +1
4-Reiniciar o processo(job em loop)
Obs1.: A tabela receberá cadastro de varios objetos
Obs2.: Os campos em vermelho foram criados somente para que seja feita as comparações depois de 5 minutos.
Problemas
1-Não estou conseguindo pegar de objeto em objeto para poder fazer a comparação - sempre está dando erro falando que as variáveis estão recebendo mais de um valor e não pode.
2- Reiniciar o processo assim que finalizado
JOB
declare @a smallint
declare @b smallint
declare @c smallint
declare @d smallint
declare @e smallint
declare @f smallint
UPDATE tabela1 SET mposição1=posição1, mposição2=posição2, mlugar=lugar WHERE nome=nome
@a=SELECT posição1 FROM tabela1 WHERE nome=nome
@b=SELECT mposição1 FROM tabela1 WHERE nome=nome
@c=SELECT posição2 FROM tabela1 WHERE nome=nome
@d=SELECT mposição2 FROM tabela1 WHERE nome=nome
@e=SELECT lugar FROM tabela1 WHERE nome=nome
@f=SELECT mlugar FROM tabela1 WHERE nome=nome
WAITFOR DELAY '00:05:00'
IF (@a=@b and @c=@d and @e=@f)
BEGUIN
UPDATE tabela1 SET tempo=tempo+1 WHERE nome=nome
END
Pergunta
osvaldo1br
Meu sistema funciona da seguinte maneira:
Banco de dados
Tabela1
Colunas:
nome varchar(10) (nome do objeto)
posição1 smallint (numero do corredor)
posição2 smallint (numero da prateleira)
mposição1 smallint (numero do corredor)
mposição2 smallint (numero da prateleira)
lugar smallint (numero da sala)
mlugar smallint (numero da sala)
tempo smallint (tempo de permanencia)
Como deve ser o funcionamento
1-Copiar os valores das posição 1 e 2 para a mposição 1 e 2
2-Esperar 5 minutos
3-Se as (posição1 = mposição1 e posição2 = mposição2 e lugar = mlugar onde o nome=nome) tempo = tempo +1
4-Reiniciar o processo(job em loop)
Obs1.: A tabela receberá cadastro de varios objetos
Obs2.: Os campos em vermelho foram criados somente para que seja feita as comparações depois de 5 minutos.
Problemas
1-Não estou conseguindo pegar de objeto em objeto para poder fazer a comparação - sempre está dando erro falando que as variáveis estão recebendo mais de um valor e não pode.
2- Reiniciar o processo assim que finalizado
JOB
Link para o comentário
Compartilhar em outros sites
0 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.