2015-06-17 5 views
0

Мне нужно запустить порядковый номер для всех моих клиентов в моей базе данных SQL Server.Несколько последовательностей TSQL в одной последовательности

У меня около 1000 клиентов, мне нужно, чтобы каждый из них имел свою собственную последовательность?

Как это можно сделать в TSQL?

Можно ли сделать одну последовательность для всех целей?

Это не кажется разумным для создания 1000 последовательностей.

+0

Что именно вы хотите? Требуется ли каждому клиенту уникальные секвенциальные номера, независимые от других клиентов, или вам нужно разделить одну и ту же последовательность между всеми клиентами? –

+0

Каждый клиент должен иметь собственную последовательность номеров. – Person

+0

Для чего вы его используете? Мне кажется, что это может быть XYProblem. Возможно, есть другое решение, о котором вы не думали ... –

ответ

0

Последовательность предоставит вам только одну серию чисел. Чтобы иметь по одному на каждого клиента, и я бы предположил, что новые клиенты также могут появиться, единственный способ, о котором я могу думать, - создать таблицу для последовательностей. У вас может быть только столбец для кода клиента и столбца int для последовательности.

Если ваша база данных нуждается в этих последовательностях очень часто (в масштабе несколько в секунду), это может легко стать узким местом, но я предполагаю, что это не так.

+0

У меня есть ситуация, когда у меня есть несколько действий одновременно, вызывая эту ситуацию блокировки/узкого места? – Person

+0

Это, конечно, возможно, я бы проверял, что блокировки происходят только для строк, а не для всей страницы, потому что на странице будет, скорее всего, много разных клиентов –

Смежные вопросы