Najbardziej wydajny sposób na… unikalny losowy ciąg

Muszę efektywnie wstawić 5-znakowy ciąg RANDOM do bazy danych, zapewniając jednocześnie, że jest to UNIKALNE. Generowanie losowego ciągu nie jest problemem, ale obecnie to, co robię, to generowanie ciągu, a następnie sprawdzenie DB, jeśli już istnieje ... jeśli tak, zaczynam od nowa.

Czy istnieje skuteczniejszy sposób na wykonanie tego procesu?

Pamiętaj, że NIE chcę używać identyfikatora GUID ani niczego więcej niż 5 znaków .... Muszę trzymać się 5 znaków.

PS: Nie sądzę, żeby to miało znaczenie, ale wszystkie moje łańcuchy są wrażliwe na wielkość liter.

Oto część „Random String”

    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

questionAnswers(6)

yourAnswerToTheQuestion