Мне нужно эффективно вставить 5-символьную СЛУЧАЙНУЮ строку в базу данных, одновременно гарантируя, что она УНИКАЛЬНА. Генерация случайной строки не является проблемой, но в настоящее время я создаю строку, а затем проверяю БД, если она уже существует ... если это так, я начинаю заново.
Есть ли более эффективный способ сделать этот процесс?
Обратите внимание, я НЕ хочу использовать GUID или что-то еще, что больше 5 символов .... Я ДОЛЖЕН придерживаться 5 символов.
PS: я не думаю, что это имеет значение, но все мои строки чувствительны к регистру.
Вот часть "Случайная строка"
Public Function GetRandomNumbers(ByVal numChars As Integer) As String
Dim chars As String() = { _
"A", "B", "C", "D", "E", "F", _
"G", "H", "I", "J", "K", "L", _
"M", "N", "O", "P", "Q", "R", _
"S", "T", "U", "V", "W", "X", _
"Y", "Z", "0", "1", "2", "3", _
"4", "5", "6", "7", "8", "9", _
"a", "b", "c", "d", "e", "f", _
"g", "h", "i", "j", "k", "l", _
"m", "n", "o", "p", "q", "r", _
"s", "t", "u", "v", "w", "x", _
"y", "z"}
Dim rnd As New Random()
Dim random As String = String.Empty
Dim i As Integer = 0
While i < numChars
random += chars(rnd.[Next](0, 62))
System.Math.Max(System.Threading.Interlocked.Increment(i), i - 1)
End While
Return random
End Function