sql >> Database teknologi >  >> RDS >> Mysql

hvordan man får tilbage java UUID gemt i DB som binær

Jeg tror, ​​du kan konvertere din UUID-streng til en bona fide UUID objekt via UUID#fromString() metode. Derefter kan du sammenligne de mindste og mest signifikante bitfelter af de to UUID, som du har:

boolean UUIDIsEqual(UUID one, String twoInput) {
    UUID two = UUID.fromString(twoInput);
    if (one.getLeastSignificantBits() == two.getLeastSignificantBits() &&
        one.getMostSignificantBits() == two.getMostSignificantBits()) {
        return true;
    }

    return false;
}

Hvis, i stedet for at have en UUID for referencen har du et byte-array, så kan du bare bruge toUUID() metode, som du allerede har til at konvertere strengen til en UUID.

Følg linket nedenfor for en demo, der viser, at strengen til UUID-konvertering virker og er logisk korrekt:

Demo




  1. Tjek om et objekt er en lagret procedure ved at bruge OBJECTPROPERTY() i SQL Server

  2. Kan ikke installere PostgreSQL:Der opstod en fejl under udførelse af Microsoft VC++ runtime installationsprogrammet på Windows XP

  3. Valg af tilfældige rækker med MySQL

  4. Ekstremt grundlæggende PHP og Mysql