से पहले तालिका उपनाम स्वीकार नहीं करेंगे मैं एक फ्रेमवर्क (जोडीडी) का उपयोग कर रहा हूं जो SQL चयन में कॉलम नामों में तालिका उपनाम जोड़ रहा है। यह अच्छी तरह से गठित एसक्यूएल की तरह दिखता है, लेकिन पोस्टग्रेस इस पर चोक करता है।पोस्टग्रेर्स कॉलम नाम
Error: ERROR: column "greeting" of relation "greeting" does not exist
SQLState: 42703
वहाँ एक रास्ता Postgres कि SQL स्वीकार करने के लिए प्राप्त करने के लिए है:
update GREETING Greeting
set Greeting.ID=5,
Greeting.NAME='World',
Greeting.PHRASE='Hello World!'
where (Greeting.ID=5)
एक त्रुटि देता है? मेरा दूसरा विकल्प ढांचे को हैक करना है, जिसे मैं नहीं करना चाहता हूं।
क्या आपने अलग-अलग कॉलम नाम एलियासिंग मोड (http://jodd.org/doc/db/sqlgenerator.html#Column-name-aliasing) सेट करने का प्रयास किया है? डिफ़ॉल्ट रूप से TABLE_REFERENCE सेट है - जो स्तंभों के लिए तालिका उपनाम जोड़ देगा, लेकिन आप अन्य दो को आजमा सकते हैं। इसे DbOomManager # setDefaultColumnAliasType() विधि द्वारा सेट किया जा सकता है, कहीं भी एप्लिकेशन स्टार्टअप पर। इसके अलावा, असली कोड स्निपेट के साथ जोडर्स से संपर्क करने में संकोच नहीं करें, वे मदद करने के लिए तैयार हैं :) – igr