Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Hibernate + MySQL:So stellen Sie die Kodierung utf-8 für Datenbank und Tabellen ein

Sie können auch Datenbanken mit Verschlüsselung erstellen.
Verwenden Sie einfach phpMyAdmin für die Erstellung von Datenbanken/Tabellen.

Es gibt einige URL-Parameter, die Sie in der URL der Ruhezustandseinstellungen angeben würden, um die Verbindung über UTF8 herzustellen:

<!-- Database Settings -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!--  for performance reasons changed to MyISAM from org.hibernate.dialect.MySQLInnoDBDialect -->
<property name="dialect">org.openmeetings.app.hibernate.utils.MySQL5MyISAMDialect</property>
<property name="connection.url">jdbc:mysql://localhost/openmeetings?autoReconnect=true&amp;useUnicode=true&amp;createDatabaseIfNotExist=true&amp;characterEncoding=utf-8</property>    

<property name="hibernate.connection.CharSet">utf8</property>
<property name="hibernate.connection.characterEncoding">utf8</property>
<property name="hibernate.connection.useUnicode">true</property>

Sie müssen nicht die gesamte Codierung in der Datenbank auf utf8 setzen, nur wenn Sie

verwenden
<!-- Database Scheme Auto Update -->
<property name="hbm2ddl.auto">update</property>   

Sie MÜSSEN die Standardcodierung von MySQL auf utf8 einstellen. Verursachen Sie die hbm2dll verwendet die Standardkodierung der Datenbank.

Sie können immer noch hbm2ddl.auto verwenden , und ändern Sie die Tabellen der Datenbank manuell, um eine utf8-Sortierung zu haben.

Wenn Sie hbm2ddl.auto nicht verwenden , können Sie die Tabellen einfach mit Ihrer bevorzugten Kodierung erstellen. Sie müssen die Datenbank nicht auf eine spezielle Kodierung einstellen.

Sebastian