Zuordnung reservierter Wörter als Entitätsfelder in JPA
Die Verwendung von SQL durch JPA kann zu Konflikten mit reservierten Wörtern in Datenbankdialekten führen. Um dieses Problem anzugehen, untersuchen wir, wie man ein Entitätsfeld einem reservierten Wort zuordnet und dabei die übliche Lösung „Verwende deinen eigenen Dialekt“ vermeidet.
Hibernate-Ansatz
Hibernate ermöglicht es dir, reservierte Wörter zu maskieren innerhalb von Backticks (`). Für JPA 1.0 verwenden Sie:
@Column(name="`open`")
Für JPA 2.0 und höher lautet die Syntax:
@Column(name="\"open\"")
Referenzen
- [Hibernate-Referenz Leitfaden](https://docs.jboss.org/hibernate/stable/orm/reference/en/html_single/#d0e3171)
- [5.4. SQL-Anführungszeichen](https://docs.jboss.org/hibernate/stable/orm/reference/en-US/html/dialect-options.html#d0e3171)
- [JPA 2.0 Spezifikation](https://docs.oracle.com/javaee/7/api/javax/persistence/Column.html#name())
- [2.13 Benennung der Datenbank Objekte](https://docs.oracle.com/javaee/7/api/javax/persistence/Table.html#name())
Zusätzliche Ressourcen
- [Ruhezustand, MySQL und „Wiederholen“ Tabelle](https://stackoverflow.com/questions/18211310/hibernate-mysql-and-table-named-repeat-strange-behavior)
Das obige ist der detaillierte Inhalt vonWie kann ich JPA-Entitätsfelder datenbankreservierten Wörtern zuordnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn