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`")
Nach dem Login kopieren
Für JPA 2.0 und höher lautet die Syntax:
@Column(name="\"open\"")
Nach dem Login kopieren
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!