sql >> Base de Datos >  >> RDS >> Mysql

Cómo usar las anotaciones de Hibernate para agregar un índice en un Lob / Clob / tinyblob

Puede hacer esto usando el auxiliar de Hibernate objetos soporte, pero no se puede hacer usando anotaciones :-(.

En su ejemplo, se vería así (se omitieron muchas cosas por brevedad):

<class name="Person" table="persons">
  <!-- whatever -->
  <database-object>
    <create>create index sysuuid on persons ( system, `uuid`(8) )</create>
    <drop>drop index sysuuid</drop>
    <dialect-scope name="org.hibernate.dialect.MySQL5InnoDBDialect" />
  </database-object>
</class>

Pido disculpas por la falta de una respuesta basada en anotaciones :-(. Espero que esto ayude.

NOTA :si adopta este enfoque, tenga en cuenta que el alcance del dialecto tiene que coincidir exactamente . Por ejemplo, si su configuración de Hibernate dice usar MySQL5InnoDBDialect , entonces debe tener este dialecto en el <dialect-scope> elemento también. Usando MySQLDialect no funcionará aunque sea la superclase del dialecto InnoDB.