como faço para dar um update de forma incrementa enquanto o campo estiver null?
quem poder ajudar eu agradeço!
Explique o cenário…
Posso ter um registro null na base hoje, outro amanhã, etc?
Ou posso ter vários uma única vez?
Vc também não disse qual banco está usando, isso é importante…
acabei esquecendo,kkkk
o banco que estou utilizando é o sql server.
esse não pode ter valor duplicado e também futuramente em algum momento vai ter valores null.
só preciso desse update para gerar novos códigos de barras no meu sistema.
Pesquise mais sobre jobs…
https://docs.microsoft.com/pt-br/sql/ssms/agent/create-a-job?view=sql-server-2017
Assim vc deixa seu update agendado para ser executado de X em X tempos…
resolvi.
DECLARE @cont INT;
declare @id bigint;
SET @cont = (select cast(max(substring(med_cod_barra,4,20)) as int) from medicamento where med_cod_barra like ‘%ABC%’)
WHILE @cont <= (select cast(max(substring(med_cod_barra,4,20)) as int) from medicamento where med_cod_barra like ‘%ABC%’)
BEGIN
SET @ID = (select top 1 MED_CODIGO from MEDICAMENTO where med_cod_barra is NULL);
PRINT ‘EFETUANDO UPDATE’;
SET @cont = @cont + 1;
UPDATE medicamento set med_cod_barra = @cont
where MED_CODIGO = @ID
END;