PostgreSQL SQL मानक का पालन कर रहा है और उस स्थिति में इसका मतलब है कि पहचानकर्ता (तालिका नाम, कॉलम नाम, आदि) को लोअरकेस में मजबूर किया जाता है, सिवाय इसके कि जब उन्हें उद्धृत किया जाता है। तो जब आप इस तरह एक टेबल बनाते हैं:
CREATE TABLE APP_USER ...
आपको वास्तव में एक तालिका मिलती है app_user
. आपने जाहिरा तौर पर किया:
CREATE TABLE "APP_USER" ...
और फिर आपको एक तालिका मिलती है "APP_USER"
।
वसंत में, आप बड़े अक्षरों में तालिका नाम के लिए एक नियमित स्ट्रिंग निर्दिष्ट करते हैं, लेकिन वह बिना उद्धरण के PostgreSQL सर्वर के लिए एक क्वेरी में विभाजित हो जाता है। आप PostgreSQL लॉग फ़ाइलों को पढ़कर इसकी जांच कर सकते हैं:यह आपके संदेश के शीर्ष पर त्रुटि के बाद स्प्रिंग द्वारा उत्पन्न क्वेरी को दिखाना चाहिए।
चूंकि स्प्रिंग संस्थाओं से प्रश्नों का निर्माण कैसे करता है, इस पर आपका बहुत कम नियंत्रण है, इसलिए आप SQL-मानक लोअर-केस आइडेंटिफ़ायर का उपयोग करना बेहतर समझते हैं।