sql >> Databasteknik >  >> RDS >> Mysql

Vilolägesproblem med Auto Increment ID MYSQL 5

Du måste komma ihåg att Hibernate är ett beständighetslager och måste kunna hålla reda på var ett objekt finns i databasen. Så när den gör en infogning kommer den faktiskt att behöva fråga i räknaren för automatisk ökning för att se vad nästa ID ska vara. Den infogar sedan ID:t i objektet och infogar objektet i databasen. Så för att viloläge ska göras i infogning, måste den göra ett val först (såvida du inte använder någon sorts GUID som genereras av applikationen). När du använder mySQL auto-increment, använd "identity"-generatorn.

Förklaring av de olika generatorerna:

http://www.roseindia.net/hibernate/hibernateidgeneratorelement.shtml

Ett XML-kodavsnitt i viloläge:

 <id name="id" type="long" unsaved-value="null" >
    <column name="uid" not-null="true"/>
    <generator class="identity"/>
 </id>


  1. Ange en tidszon som ska användas som referenstidszon

  2. Mysql count returnerar noll om ingen post hittas

  3. Mysql, PDO - Liknande uttalande fungerar inte med bindParam

  4. Köra/starta MySQL utan installation på Windows