---
title: "unikt teckenkombination"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/73856-unikt-teckenkombination"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "DavidB"
published: "2003-04-12T13:45:01.000Z"
updated: "2003-04-13T20:01:06.000Z"
replies: 11
views: 482
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/73856-unikt-teckenkombination"
---

# unikt teckenkombination

## #1 — DavidB, 2003-04-12T13:45Z

undrar om det på nåt sätt går att få en unik teckenkombination i mySQL likt {99C910A5-5962-4C3A-A22A-7E3838EA876B} i Access och SQL Server?

Permalänk: https://www.webforum.nu/p/73856

## #2 — @nders, 2003-04-12T13:49Z

Vad ska du ha det till? Men, nej, det finns inte replikerings-ID i MySQL (om de inte nyligen lagt till det vill säga, det vet jag inte).

Mvh

Permalänk: https://www.webforum.nu/p/1009067

## #3 — DavidB, 2003-04-12T15:14Z

Ska ha det för validering ar epostadresser :)

Om nån registrerar sig på min sida så har jag det så att jag skickar ett mail med en länk som denna måste klicka på för att "aktivera sitt konto". 
För tillfället ser länken ut ungefär såhär:
<http://www.url.se/aktivera.aspx?id=10>

Problemet med detta är ju att det inte är några som helst problem att fuska. Men jag tänkte att jag kunde ha ett fält till i databasen som heter typ Aktivera som replikerings-ID't skulle ligga i och då hade dte inte gått att fuska.

Men jag får på något annat sätt då, ingen som har något förslag?

Permalänk: https://www.webforum.nu/p/1009128

## #4 — @nders, 2003-04-12T15:16Z

Skapa ett varcharfält i tabellen, och slumpa fram en teckenkombination själv, är mitt generella tips i liknande frågeställningar. 

Mvh,

Permalänk: https://www.webforum.nu/p/1009132

## #5 — DavidB, 2003-04-12T23:20Z

jo, men finns det inte en liten risk att det slumpas samma för två användare då? och i så fall blir allting helt fel.

Men man kan i och försig slumpa fram nånting + att man använder userId't lite dolt i strängen.

Permalänk: https://www.webforum.nu/p/1009499

## #6 — Mr. N., 2003-04-12T23:26Z

Eller så slumpar man och så kollar man "finns det redan? nehej, då kör vi" eller "finns det redan? ojdå, då slumpar vi igen". Blir kanske lite slött...

Permalänk: https://www.webforum.nu/p/1009505

## #7 — aasah, 2003-04-13T07:36Z

Sen kan man ju fundera över sannolikheten att få samma. Säg att ditt lösen bara består av siffror ==\> 10 "tecken", a-z ==\> 26 "tecken", kombination ==\> minst 36 "tecken", alla möjliga chars ==\> 255. Bestäm dig. Kalla T för antalet tecken enligt ovan.
Sannolikheten att du råkar få samma sträng på n tecken långt lösen är: 
antalet redan framslumpade strängar/T^n. 
Sätt dig ner med en miniräkanre så inser du nog fort att denna sannolikhet kan göras försumbar, det är ju bara att ta ett stort n. Tänk dock på att ge ett nytt frö till slumptalsgeneratorn varje gång, bra idé är att använda systemklockan för att få fröet ==\> garanterat olika start varje gång.

Permalänk: https://www.webforum.nu/p/1009613

## #8 — K@llen, 2003-04-13T09:46Z

Om du använder php kan du ju göra så här:

```
   $regnumber = crc32($userName.$email.microtime());
```

Permalänk: https://www.webforum.nu/p/1009673

## #9 — DavidB, 2003-04-13T09:50Z

använder asp.net

Permalänk: https://www.webforum.nu/p/1009676

## #10 — K@llen, 2003-04-13T09:53Z

> **DavidB skrev:**
>
> använder asp.net

Då kan jag förstå att livet är besvärligt.  §jr

Permalänk: https://www.webforum.nu/p/1009677

## #11 — P, 2003-04-13T09:59Z

```
    Public Shared Function GeneratePassword() As String
        Dim password As String = ""
        Dim passchar As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"
        Dim ranbuff(50) As [Byte]
        Dim rng As System.Security.Cryptography.RandomNumberGenerator = System.Security.Cryptography.RandomNumberGenerator.Create()
        rng.GetBytes(ranbuff)

        Dim iLen As Integer = ranbuff(0) Mod 4 + 8 ' random length 8 to 12 chars 
        Dim iIndex As Integer
        For iIndex = 1 To iLen
            Dim bNum As Integer = CInt(ranbuff((iIndex + 1)))
            bNum = bNum Mod passchar.Length
            password += passchar.Substring(bNum, 1)
        Next iIndex
        Return password
    End Function
```

kanske?

Permalänk: https://www.webforum.nu/p/1009680

## #12 — DavidB, 2003-04-13T20:01Z

tackar, får ta och testa

Permalänk: https://www.webforum.nu/p/1010068

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/73856-unikt-teckenkombination
