##समाधान
PostgreSQL . में आपको स्कीमा का नाम इस प्रकार निर्दिष्ट करना होगा:
@Table(name="table_name", schema = "myapp")
^^^^^^^^^^^^^^^^
##लंबी कहानी
आपको यह त्रुटि मिली:
org.postgresql.util.PSQLException: ERROR: column user0_.id does not exist
क्योंकि जब आप PostgreSQL . में डेटाबेस बनाते हैं , यह सार्वजनिक . नामक एक डिफ़ॉल्ट स्कीमा बनाता है , इसलिए जब आप Entity
. में नाम निर्दिष्ट नहीं करते हैं फिर हाइबरनेट सार्वजनिक . में स्वचालित रूप से जांच करेगा स्कीमा।
##अच्छे व्यवहार
database
के नाम पर बड़े अक्षरों का प्रयोग न करें ,schema
,tables
याcolumns
PostgreSQL . में . अन्यथा आपको उद्धरणों के साथ इन नामों से बचना चाहिए, और इससे सिंटैक्स त्रुटियां हो सकती हैं, इसलिए इसके बजाय आप इसका उपयोग कर सकते हैं:
@Table(name="table_name", schema = "schema_name")
^^^^^^^^^^ ^^^^^^^^^^^
- कीवर्ड USER PostgreSQL में आरक्षित कीवर्ड है एक नज़र डालें
+----------+-----------+----------+-----------+---------+
| Key Word |PostgreSQL |SQL:2003 | SQL:1999 | SQL-92 |
+----------+-----------+----------+-----------+---------+
| .... .... .... .... .... |
+----------+-----------+----------+-----------+---------+
| USER | reserved |reserved | reserved | reserved|
+----------+-----------+----------+-----------+---------+
- Dto के बीच अंतर करने के लिए और इकाई अपनी इकाई के नाम के अंत में Entity का उपयोग करना अच्छा अभ्यास है, उदाहरण के लिए
UserEntity