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

क्या Oracle तालिका में निर्दिष्ट स्थान पर कॉलम जोड़ने का कोई तरीका है?

यह वास्तव में कोई फर्क नहीं पड़ता जहां स्तंभ भौतिक रूप से select . के बाद से है आपको उस आदेश को निर्दिष्ट करने की अनुमति देगा (तार्किक रूप से) जिसमें उन्हें पुनर्प्राप्त किया गया है।

और, यदि आप select * . का उपयोग कर रहे हैं जो आपको ऑर्डर निर्दिष्ट नहीं करने देता, आपको शायद नहीं होना चाहिए। ऐसी कुछ कीमती स्थितियां हैं जहां आपको ऐसा करना चाहिए (उदाहरण के लिए डीबी विश्लेषण उपकरण), ज्यादातर समय अपने इच्छित व्यक्तिगत कॉलम का चयन करना बेहतर होता है, भले ही आप उन सभी को चाहते हों। यह आपको स्कीमा परिवर्तनों को शीघ्रता से पकड़ने की अनुमति देता है ताकि आप अपने कार्यक्रमों को उनके अनुकूल बना सकें।

किसी भी स्थिति में, SQL स्वयं उस क्रम के बारे में कोई गारंटी नहीं देता है जिसमें कॉलम वापस किए जाते हैं जब तक कि आप स्पष्ट रूप से उनकी सूची बनाओ। select * उन्हें आज के क्रम में और कल वर्णमाला के क्रम में आपको दे सकते हैं। भले ही कोई विशेष कार्यान्वयन आपको इसे करने की अनुमति देता है ("दाएं" स्थान पर कॉलम के साथ एक नई तालिका बनाकर और डेटा को कॉपी करके, या एक SQL एक्सटेंशन प्रदान करके alter table T insert column C1 before C2 कोड> ), मैं इसके खिलाफ सलाह दूंगा। यह अन्य कार्यान्वयनों के लिए पोर्टेबल नहीं होगा और मैं अपने कोड को यथासंभव पोर्टेबल रखना पसंद करता हूं।

इसके अलावा, एसक्यूएल में आप जो निर्दिष्ट कर सकते हैं, उससे परे, एक डीबीएमएस पूरी तरह से नियंत्रित करने में सक्षम होना चाहिए कैसे यह डेटा स्टोर करता है। हो सकता है कि आपकी प्राथमिक कुंजी सातवें और बयालीसवें कॉलम का एक संयोजन हो और भौतिक रिकॉर्ड के सामने उन्हें रखना अधिक कुशल हो सकता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे oracle में अल्पविराम से अलग स्ट्रिंग से विशिष्ट मान निकालने के लिए?

  2. Oracle नंबर और varchar शामिल हों

  3. HikariCP:Oracle 11g के लिए अधिकतम लाइफटाइम सेट करने के लिए किस डेटाबेस स्तर के टाइमआउट पर विचार किया जाना चाहिए

  4. ORA-01002:अनुक्रम C++ से बाहर लाएं

  5. EF4 के साथ Int32 को Oracle नंबर (5) में बदलें