parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

а может таким образом в 7 UPDATE-ов сдвинуть???

Sergei 30.03.2005 19:59

вместо этого:
^void:sql{
	UPDATE courier_shedule
	SET
		date_sdvig='^now.sql-string[]',
		^for[i](1;7){
		d$i = "^if($i+$x<=7){d^eval($i+$x)}{0}"
		}[,]
	WHERE
		date_sdvig<'^now.sql-string[]'
	}
сделать это:

завести дополнительное поле lock, по умолчанию равное "0"
^for[i](1;7){
^void:sql{
	UPDATE courier_shedule
	SET lock=$i, d$i = "^if($i+$x<=7){d^eval($i+$x)}{0}"
	WHERE lock=$i-1
	}
}
^void:sql{UPDATE courier_shedule SET lock=0}
Если даже одновременно несколько пользователей выполнять начнут этот код, то на мой взгляд всё корректно должно отработать. Согласны?