जेपीए 1.0 प्रदाता के रूप में हाइबरनेट के साथ, आप आरक्षित कीवर्ड को बैकटिक्स के भीतर संलग्न करके बच सकते हैं:
@Column(name="`open`")
यह हाइबेरेट कोर से विरासत में मिला सिंटैक्स है:
<ब्लॉकक्वॉट>5.4. SQL उद्धृत पहचानकर्ता
आप हाइबरनेट को मैपिंग दस्तावेज़ में तालिका या कॉलम नाम इनबैकटिक्स को संलग्न करके जेनरेट किए गए एसक्यूएल में एक पहचानकर्ता को उद्धृत करने के लिए मजबूर कर सकते हैं। हाइबरनेट SQL बोली के लिए सही उद्धरण शैली का उपयोग करेगा। यह आमतौर पर डबल कोट्स है, लेकिन SQL सर्वर ब्रैकेट का उपयोग करता है और MySQL बैकटिक्स का उपयोग करता है।पी>
<class name="LineItem" table="`Line Item`">
<id name="id" column="`Item Id`"/><generator class="assigned"/></id>
<property name="itemNumber" column="`Item #`"/>
...
</class>
जेपीए 2.0 में, सिंटैक्स मानकीकृत है और बन जाता है:
@Column(name="\"open\"")
संदर्भ
- हाइबरनेट संदर्भ मार्गदर्शिका
- 5.4. SQL उद्धृत पहचानकर्ता
- जेपीए 2.0 विनिर्देश
- 2.13 डेटाबेस ऑब्जेक्ट का नामकरण
संबंधित प्रश्न
- हाइबरनेट, MySQL और "रिपीट" नाम की तालिका - अजीब व्यवहार
- स्वचालित आरक्षित शब्द हाइबरनेट तालिकाओं और स्तंभों के लिए बच रहा है