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

Lagring af UUID som streng i mysql ved hjælp af JPA

bare brug@org.hibernate.annotations.Type(type="uuid-char")

Der er tre niveauer af datatyper:
- Java-typer
- Hibernate-typer
- Databasespecifikke typer.

Hibernate datatypepræsentation er en bro mellem Java-datatype og databasetyper for at være uafhængig af databasen.

Du kan tjekke denne mappings .Som du kan finde der java.util.UUID kan kortlægges til forskellige typer (binær eller char/varchar). uuid-binary er nøglen til hibernates UUIDBinaryType, får du denne type som standard, og den vil blive kortlagt til BINARY af din database.

Hvis du ønsker at få CHAR-type under dit UUID, skal du forklare for at gå i dvale, at du vil have hans UUIDCharType . For at gøre det bruger du uuid-char nøgle og som du kan tjekke i JavaDoc af @Type annotation:Defines a Hibernate type mapping. . Så du bruger annotering til at forklare dvale, hvilken bro den skal bruge.




  1. Oracle Text fungerer ikke med NVARCHAR2. Hvad ellers kan være utilgængeligt?

  2. PHP - MySQL får værdien af ​​ud parameter fra en lagret procedure

  3. Python Pandas skriver til sql med NaN-værdier

  4. Ret "Aritmetisk overløbsfejl ved konvertering af int til datatype numerisk" i SQL Server