मैं डेटाबेस से दूसरे डेटाबेस में कुछ डेटा स्थानांतरित करने के लिए एसएसआईएस का उपयोग कर रहा हूं।

एक तर्क है कि मुझे कुछ शर्तों की जांच करने की आवश्यकता है और प्रत्येक शर्त में एक त्रुटि संदेश है। आवश्यकता के आधार पर एक कॉलम होना चाहिए कि उसमें त्रुटि टेक्स्ट जोड़ा जाए।

मैंने "व्युत्पन्न कॉलम" में एक कॉलम बनाने की कोशिश की और फिर इसे अपना त्रुटि टेक्स्ट असाइन किया।

दूसरे मामले के लिए, मैंने "व्युत्पन्न कॉलम" में एक नया कॉलम बनाया और नए के साथ जोड़ा गया पिछला कॉलम दूसरा कॉलम बनाया और अन्य मामलों के अंत तक।

अब समस्या यह है कि यह ठीक से काम नहीं कर रहा है और मेरे पास है।

मैं जानना चाहता हूं कि SSIS में एक कॉलम में टेक्स्ट की एक नई लाइन जोड़ने का सबसे अच्छा समाधान क्या है।

स्यूडोकोड नीचे जैसा होना चाहिए:

String error_text = "";

if logic 1 failed then error_text+= "error1"
if logic 2 failed then error_text+= "error2"
if logic 3 failed then error_text+= "error3"

मेरा डेटाबेस Oracle है और मैं OLEDB कनेक्शन का उपयोग कर रहा हूँ।

0
Amir 30 अप्रैल 2018, 13:02

2 जवाब

सबसे बढ़िया उत्तर

आपके पास निम्नलिखित विकल्प हैं:

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

  • सभी संभावित त्रुटि संदेशों के साथ एक नया कॉलम बनाएं, अपने सभी सत्यापन अभिव्यक्तियों को एक विशाल, कठिन और पढ़ने में कठिन, एसएसआईएस अभिव्यक्ति में विलय करके। एसएसआईएस सिंटैक्स शोध मामलों के लिए सबसे अच्छा नहीं है।

  • अपने डेटा के स्रोत में अपना तर्क करें, आपके मामले में आपके Oracle डेटाबेस में होगा। एसएसआईएस अभिव्यक्तियों की समीक्षा और रखरखाव (और आमतौर पर तेज़) के लिए एसक्यूएल बहुत आसान है।

  • शर्तों की जांच करने और त्रुटि संदेश बनाने के लिए एक कस्टम स्क्रिप्ट (जैसे वीबी या सी #) का उपयोग करें। यह एसएसआईएस अभिव्यक्तियों का उपयोग करने से बेहतर है लेकिन इसके लिए थोड़ा और प्रोग्रामिंग ज्ञान की आवश्यकता है।

यदि आपके पास त्रुटि सत्यापन की संख्या कम है (10 से कम), तो मैं पहला दृष्टिकोण करने का सुझाव दूंगा। यदि आप C#/VB के जानकार हैं या आप अनुमान लगा सकते हैं कि आपको बहुत अधिक समीक्षा और रखरखाव की आवश्यकता होगी तो आखिरी वाला सबसे अच्छा होगा।

2
EzLo 30 अप्रैल 2018, 17:43

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

2
DEEPAK LAKHOTIA 30 अप्रैल 2018, 17:28