Надежный способ визуализации уникального номера заказа - PullRequest
0 голосов
/ 16 марта 2020

Пожалуйста, смотрите код ниже, чтобы сгенерировать уникальный возрастающий номер из базового номера, хранящегося в строке таблицы параметров. Интересно, это безопасный способ предотвратить одновременное использование одного и того же числа?

Мои знания о параллелизме на сервере SQL ограничены, поэтому я надеюсь, что здесь есть несколько экспертов, которые дадут мне несколько советов, если это Код предотвращает одновременное использование одного и того же номера. Любая помощь или мысли высоко ценятся.

/* Create table to store temporary value */
declare @bedrijf_parameter_voor_update table (bedrijf_parameter_id id, afleverbon_start_nr int)

/* Raise counter by 1 */
update bedrijf_parameter
set afleverbon_start_nr = afleverbon_start_nr + 1

/* Store deleted row to use as order number */
output deleted.bedrijf_parameter_id, deleted.afleverbon_start_nr into @bedrijf_parameter_voor_update
where bedrijf_parameter_id = 1 --there is only one row in bedrijfs_parameter which holds all the parameters of the application 

/* Write the order number to the transport table */
update transport
set vracht_bon_nummer = (select afleverbon_start_nr from @bedrijf_parameter_voor_update where bedrijf_parameter_id = 1)
where transport_id = @transport_id and vracht_bon_nummer is null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...