पोस्टग्रेज (नए पर निश्चित नहीं है) टेबल नामों को लोअर केस में बदलें। यह पसंदीदा संचालन प्रक्रिया है। यदि आप अपने प्रश्नों को लॉग करते हैं तो आप देखेंगे कि हाइबरनेट आपके टेबल नाम को उद्धृत कर सकता है या नहीं भी हो सकता है (मुझे लगता है कि यह नहीं है)।
उपयोगकर्ता मॉडल को Postgres में सहेजना हाइबरनेट करें
ईमानदारी से, यदि आप पोस्टग्रेज पर चल रहे हैं तो आपको वास्तव में या तो हाइबरनेट को ठीक से कॉन्फ़िगर करना चाहिए, या, जैसा कि मैं इसे देखूंगा, अपने डेटाबेस को सामान्य करें क्योंकि तालिकाओं में नामस्थान टकराव नहीं होना चाहिए (इस प्रकार समस्या को दूर करना)।
// लेख से...
@Entity
@Table(name="\"User\"")
public class User {
...
}
संपादित 07/31/12:
यह परिवर्तन तालिकाओं के क्षेत्रों में निम्नलिखित तरीके से किया जाना चाहिए:
@Column
के लिए , एस्केप्ड जोड़ने वाले कॉलम का नाम बदलें ":
@Column(name = "\"C_MODEL\"")
@JoinColumn
. के लिए , `:
@JoinColumn(name = "`TP_MODEL`")
आपको इसे मैन्युअल रूप से उन कॉलमों पर करना होगा जो आपको त्रुटियाँ देते हैं।