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

Oracle - किसी भिन्न नाम वाली तालिका में डेटा आयात करें?

यदि आप पुराने EXP और IMP उपयोगिताओं का उपयोग कर रहे हैं तो आप ऐसा नहीं कर सकते। एकमात्र विकल्प उसी नाम की तालिका में आयात करना है (हालांकि आप उस स्कीमा को बदल सकते हैं जो तालिका का स्वामी है।

हालाँकि, आप कहते हैं कि आप 11g पर हैं। 10g में पेश किए गए DataPump उपयोगिता का उपयोग क्यों न करें, जो आयात और निर्यात की जगह लेता है। क्योंकि 11g में वह उपयोगिता REMAP_TABLE विकल्प प्रदान करती है जो ठीक वही करता है जो आप चाहते हैं।

संपादित करें

टिप्पणियों को पढ़ने के बाद ओपी ने इसे लिखते समय एक और प्रतिक्रिया में जोड़ा, मुझे नहीं लगता कि उनके मामले में REMAP_TABLE विकल्प काम करेगा। यह केवल नई वस्तुओं का नाम बदलता है। यदि लक्ष्य स्कीमा में मूल नाम वाली कोई तालिका मौजूद है, तो ORA-39151 के साथ आयात विफल हो जाता है। क्षमा करें।

बीआईएस संपादित करें

अंत में ओपी द्वारा चुने गए समाधान को देखते हुए (मौजूदा तालिका छोड़ें, नई तालिका से बदलें) डेटा पंप के साथ एक समाधान है, जो TABLE_EXISTS_ACTION={TRUNCATE | REPLACE} खंड। REPLACE चुनना तालिका को गिरा देता है जबकि TRUNCATE केवल, एर, इसे छोटा कर देता है। किसी भी मामले में हमें संदर्भात्मक अखंडता बाधाओं के बारे में चिंता करने की ज़रूरत है, लेकिन यह भी चुने हुए समाधान के साथ एक मुद्दा है।

मैं इस परिशिष्ट को ओपी के लिए नहीं बल्कि अन्य साधकों के लाभ के लिए पोस्ट करता हूं जो भविष्य में इस पृष्ठ को कुछ समय पाते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कीप-अलाइव का उपयोग करना:ORA-00933:SQL कमांड ठीक से समाप्त नहीं हुआ

  2. यूनिक्स पर ऑरैकल का उपयोग करके फ्लैट फ़ाइल में आउटपुट प्राप्त करना

  3. org.hibernate.tool.schema.spi.CommandAcceptanceException:आदेश निष्पादित करने में असमर्थ

  4. Oracle में LOB द्वारा लॉन्ग डेटा टाइप को क्यों बदल दिया गया है?

  5. DG4ODBC के लिए Oracle भाषा पैरामीटर सेट करना