Я сделал это, объединив уникальный идентификатор из таблицы со случайным числом:
update [table]
set token = cast([id] as varchar(10)) + cast(cast(round((rand() * 500000000.0), 0) as int) as varchar(10))
Отрегулируйте размеры varchar и коэффициент умножения, чтобы получить нужный вам размер токена. Если вам нужен точный размер, сделайте полученную строку слишком длинной и используйте подстроку для установки длины.
Это не является криптографически сильным, но в большинстве случаев работает для меня. Использование поля id из таблицы гарантирует, что токен является уникальным, а случайное число затрудняет его угадывание.