PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

पोस्टग्रेज में टेबल कॉलम के नाम को अपर केस में बदलें

इससे पहले कि मैं यह समझाऊं कि यह कैसे करना है, मैं दृढ़ता से ऐसा न करने का सुझाव दें।

PostgreSQL में, यदि तालिका या स्तंभ नाम गैर-उद्धृत हैं, जैसे:

SELECT Name FROM MyTable WHERE ID = 10

वे वास्तव में स्वचालित रूप से लोअर केस में फोल्ड हो जाते हैं सबसे पहले, इसलिए उपरोक्त क्वेरी इसके समान है:

SELECT name FROM mytable WHERE id = 10

यदि आप सभी नामों को अपर केस में बदलना चाहते हैं, तो यह कथन काम नहीं करेगा :

SELECT Name FROM MyTable WHERE ID = 10

इस क्वेरी को काम करने के लिए आपको हर एक नाम को डबल-कोट करना होगा:

SELECT "NAME" FROM "MYTABLE" WHERE "ID" = 10

यदि, दूसरी ओर, आप मानक PostgreSQL लोअर-केस केवल अनुबंध का उपयोग करते हैं, तो आप किसी भी केस संयोजन का उपयोग कर सकते हैं और यह तब तक काम करेगा जब तक आप कोई नाम उद्धृत नहीं करते हैं।

अब, यदि आप अभी भी अपर केस में कनवर्ट करने का आग्रह करते हैं, तो आप pg_dump --schema-only

ऐसा करने के बाद, सभी तालिका बनाएं<की जांच करें /कोड> कथन और उचित निर्माण ALTER TABLE इस डंप पर आधारित बयान - ऐसा करने के लिए आपको कुछ स्क्रिप्ट (पर्ल या पायथन) लिखनी होगी।

वैकल्पिक रूप से, आप INFORMATION_SCHEMA.TABLES पढ़ सकते हैं। और/या INFORMATION_SCHEMA.COLUMNS और उपयुक्त ALTER TABLE . का निर्माण और निष्पादन भी करें बयान।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. त्रुटि:PostgreSQL में स्कीमा बनाते समय भूमिका का सदस्य होना चाहिए

  2. ढेर सारे धागों के साथ हाइबरनेट का उपयोग

  3. किसी अन्य फ़ील्ड में परिकलित डेटा सम्मिलित करने के लिए सम्मिलित फ़ील्ड में डेटा का उपयोग करके सम्मिलित करने पर ट्रिगर प्रक्रिया को पोस्टग्रेज़ करता है

  4. स्पार्क एसक्यूएल 2.0:मान्य पोस्टग्रेएसक्यूएल क्वेरी के साथ NullPointerException

  5. gevent और posgres:अतुल्यकालिक कनेक्शन विफल