oracle - ओरेकल एसक्यूएल डेवलपर में सीएसवी को क्वेरी परिणाम कैसे निर्यात करें?




csv export oracle-sqldeveloper (6)

एफवाईआई, आप /*csv*/ अन्य प्रारूपों के साथ-साथ /*xml*/ और /*html*/ सहित विकल्प भी बदल सकते हैं। /*xml*/ * from emp चयन करें उदाहरण के लिए क्वेरी परिणामों के साथ एक XML दस्तावेज़ लौटाएगा। मैं एक प्रश्न से एक्सएमएल वापस करने के लिए एक आसान तरीका खोजने के दौरान इस आलेख में आया था।

मैं ओरेकल एसक्यूएल डेवलपर 3.0 का उपयोग कर रहा हूँ। एक टेक्स्ट फ़ाइल (अधिमानतः सीएसवी) में एक क्वेरी परिणाम निर्यात करने का तरीका जानने का प्रयास कर रहा है। क्वेरी परिणाम विंडो पर राइट क्लिक करने से मुझे कोई निर्यात विकल्प नहीं मिलता है।


सीएसवी निर्यात आपके डेटा से नहीं बचता है। स्ट्रिंग्स के लिए देखें जो \ में परिणामस्वरूप परिणामस्वरूप \" बच निकलेगा \" जैसा नहीं होगा \ । तब आपके पास गलत संख्या है " और आपकी पूरी पंक्ति टूट गई है।


एसक्यूएल डेवलपर से अपने स्थानीय सिस्टम में निर्यात करने के लिए।

Path : C:\Source_Table_Extract\des_loan_due_dtls_src_boaf.csv

    SPOOL "Path where you want to save the file"
    SELECT /*csv*/ * FROM TABLE_NAME;

बिल्कुल "निर्यात नहीं" नहीं है, लेकिन आप उन ग्रिड में पंक्तियों (या Ctrl - A को चुनने के लिए) चुन सकते हैं जिन्हें आप निर्यात करना चाहते हैं, और उसके बाद Ctrl - C के साथ प्रतिलिपि बनाएँ।

डिफ़ॉल्ट टैब-डिलीमिट किया गया है। आप इसे Excel या किसी अन्य संपादक में पेस्ट कर सकते हैं और अपनी पसंद के डिलीमीटर को कुशल बना सकते हैं।

साथ ही, यदि आप Ctrl - C के बजाय Ctrl - Shift - C का उपयोग करते हैं, तो आप कॉलम हेडर भी कॉपी करेंगे।


संस्करण मैं उपयोग कर रहा हूँ

5 मई 2012 अपडेट करें

जेफ स्मिथ ने दिखाया है कि एसक्यूएल डेवलपर से सीएसवी आउटपुट प्राप्त करने के लिए मुझे सबसे अच्छा तरीका है। जेफ की विधि नीचे विधि 1 के रूप में दिखाया गया है:

विधि 1

अपनी एसक्यूएल क्वेरी में टिप्पणी /*csv*/ जोड़ें और क्वेरी को स्क्रिप्ट के रूप में चलाएं (वर्कशीट टूलबार पर F5 या दूसरा निष्पादन बटन का उपयोग करके)

बस।

विधि 2

एक क्वेरी चलाएं

राइट क्लिक करें और अनलोड का चयन करें।

अद्यतन करें। एसक्यूएल डेवलपर संस्करण 3.0.04 अनलोड को निर्यात करने के लिए बदल दिया गया है, यह इंगित करने के लिए जेनिस पेसेनिक्स के लिए धन्यवाद

एसक्यूएल डेवलपर संस्करण 3.0.04 के लिए संशोधित स्क्रीन शॉट

प्रारूप ड्रॉप डाउन से सीएसवी का चयन करें

और बाकी स्क्रीन निर्देशों का पालन करें।


मुझे लगता है कि @Aredridel की पोस्ट निकटतम थी, लेकिन इसके लिए थोड़ा और कुछ है - इसलिए मैं इसे यहां @Aredridel ; बात यह है कि svn, यदि आप रेपो के सबफ़ोल्डर में हैं, और आप करते हैं:

/media/disk/repo_svn/subdir$ svn export . /media/disk2/repo_svn_B/subdir

फिर svnसंशोधन फ़ाइलों के तहत सभी फ़ाइलों को निर्यात करेगा (वे ताजा जोड़ा गया हो सकता है; या संशोधित स्थिति) - और यदि आपके पास उस निर्देशिका में अन्य "जंक" है (और मैं .svnयहां उपफोल्डर्स की गणना नहीं कर रहा हूं , लेकिन .oफाइलों जैसी दृश्यमान सामग्री ) , इसे निर्यात नहीं किया जाएगा; एसवीएन रेपो द्वारा पंजीकृत केवल उन फाइलों को निर्यात किया जाएगा। मेरे लिए, एक अच्छी बात यह है कि इस निर्यात का भी स्थानीय परिवर्तन है कि है के साथ फ़ाइलें शामिल है नहीं अभी तक किया गया; और एक और अच्छी बात यह है कि निर्यात की गई फ़ाइलों की टाइमस्टैम्प मूल के समान ही हैं। या, जैसा svn help exportकि इसे रखता है:

  1. पीएटीएच 1 द्वारा निर्दिष्ट कार्य प्रतिलिपि से एक स्वच्छ निर्देशिका पेड़ का निर्यात करता है, यदि इसे दिया जाता है तो संशोधन आरईवी पर, अन्यथा काम पर, PATH2 में। ... यदि आरईवी निर्दिष्ट नहीं है, तो सभी स्थानीय परिवर्तन संरक्षित किए जाएंगे। संस्करण नियंत्रण के तहत नहीं फ़ाइलें कॉपी नहीं की जाएगी।

यह समझने के लिए कि gitटाइमस्टैम्प को संरक्षित नहीं किया जाएगा, इन आदेशों के आउटपुट की तुलना करें ( gitअपनी पसंद के रेपो के उपफोल्डर में ):

/media/disk/git_svn/subdir$ ls -la .

... तथा:

/media/disk/git_svn/subdir$ git archive --format=tar --prefix=junk/ HEAD | (tar -t -v --full-time -f -)

... और मैं, किसी भी मामले में, नोटिस करता हूं कि git archiveसंग्रहीत फ़ाइल के सभी टाइमस्टैम्प समान होने का कारण बनता है! git help archiveकहते हैं:

गिट आर्काइव अलग-अलग व्यवहार करता है जब एक स्वाद आईडी या टैग आईडी दिए जाने पर एक वृक्ष आईडी बनाम दिया जाता है। पहले मामले में वर्तमान समय संग्रह में प्रत्येक फ़ाइल के संशोधन समय के रूप में उपयोग किया जाता है। बाद के मामले में संदर्भित प्रतिबद्ध वस्तु में दर्ज किए गए प्रतिबद्ध समय का उपयोग इसके बजाय किया जाता है।

... लेकिन स्पष्ट रूप से दोनों मामलों ने " प्रत्येक फ़ाइल का संशोधन समय" निर्धारित किया ; इस प्रकार उन फ़ाइलों के वास्तविक टाइमस्टैम्प को संरक्षित नहीं करते!

इसलिए, टाइमस्टैम्प को संरक्षित करने के लिए, यहां एक bashस्क्रिप्ट है, जो वास्तव में एक "एक-लाइनर" है, यद्यपि कुछ हद तक जटिल है - इसलिए नीचे इसे कई पंक्तियों में पोस्ट किया गया है:

/media/disk/git_svn/subdir$ git archive --format=tar master | (tar tf -) | (\
  DEST="/media/diskC/tmp/subdirB"; \
  CWD="$PWD"; \
  while read line; do \
    DN=$(dirname "$line"); BN=$(basename "$line"); \
    SRD="$CWD"; TGD="$DEST"; \
    if [ "$DN" != "." ]; then \
      SRD="$SRD/$DN" ; TGD="$TGD/$DN" ; \
      if [ ! -d "$TGD" ] ; then \
        CMD="mkdir \"$TGD\"; touch -r \"$SRD\" \"$TGD\""; \
        echo "$CMD"; \
        eval "$CMD"; \
      fi; \
    fi; \
    CMD="cp -a \"$SRD/$BN\" \"$TGD/\""; \
    echo "$CMD"; \
    eval "$CMD"; \
    done \
)

ध्यान दें कि यह माना जाता है कि आप "वर्तमान" निर्देशिका (उपरोक्त /media/disk/git_svn/subdir) में सामग्री निर्यात कर रहे हैं - और जिस गंतव्य में आप निर्यात कर रहे हैं वह कुछ हद तक असुविधाजनक रूप से रखा गया है, लेकिन यह DESTपर्यावरण चर में है। ध्यान दें कि इस स्क्रिप्ट के साथ; DESTउपर्युक्त स्क्रिप्ट चलाने से पहले, आपको मैन्युअल रूप से निर्देशिका बनाना होगा ।

स्क्रिप्ट चलाने के बाद, आप तुलना करने में सक्षम होना चाहिए:

ls -la /media/disk/git_svn/subdir
ls -la /media/diskC/tmp/subdirB   # DEST

... और उम्मीद है कि एक ही टाइमस्टैम्प देखें (उन फ़ाइलों के लिए जो संस्करण नियंत्रण में थे)।

उम्मीद है कि यह किसी की मदद करता है,
चीयर्स!







oracle csv export oracle-sqldeveloper