title: Hibernate: How does native identifier generation strategy work
body: <p>Hibernate has an identifier generation strategy called <code>native</code> that selects <code>identity</code>, <code>sequence</code> or <code>hilo</code> depending upon the capabilities of the underlying database. I used MySQL with <code>hibernate.hbm2ddl.auto=update</code> which generated <code>id BIGINT(20) NOT NULL AUTO_INCREMENT</code> for <code>id</code> property of <code>Long</code> Java data type.</p>
  
  <p>I am trying to understand how did Hibernate choose <code>AUTO_INCREMENT</code> when it used <code>SchemaExport</code> tool. Is <code>AUTO_INCREMENT</code> the default primary key generation strategy for MySQL?</p>
  
  <p>Could somebody help me understand it?</p>