2010-01-06 10 views
5

मुझे केवल एक कॉलम के साथ एक विशाल तालिका से फ़ाइल में डेटा निर्यात करने की आवश्यकता है, लेकिन हजारों पंक्तियां जहां पंक्ति का क्रम महत्वपूर्ण है। मैं बीसीपी कमांड का उपयोग कर रहा हूं
bcp DBNAME.dbo.tblName out mydata.dat -Uusername -Ppassword -c
मैंने 10 पंक्तियों वाली तालिका के साथ चेक किया और मुझे लगता है कि पंक्तियों का क्रम डेटा फ़ाइल में बनाए रखा जाता है। लेकिन क्या मुझे लगता है कि पंक्तियों की संख्या 10000 से अधिक कहने पर बीसीपी आदेश बनाए रखेगी?क्या डेटा फ़ाइल में निर्यात करते समय बीसीपी पंक्ति क्रम बनाए रखता है?

उत्तर

1

आप मान कभी नहीं करना चाहिए कि एक SQL SELECT (या bcp) किसी निश्चित क्रम या उसी क्रम में मान वापस नहीं करेगा जब तक कि आप ऑर्डर द्वारा ऑर्डर नहीं करते।

आम तौर पर, तालिका पर एक सूचकांक के आधार पर मूल्यों को क्रम में वापस कर दिया जाता है।

हालांकि, मैंने उन मामलों को देखा है जहां मूल्य सूचकांक क्रम में वापस नहीं किए जाते हैं। ऐसा प्रतीत होता है कि कैश में पंक्तियों को डिस्क से पंक्तियों से पहले वापस किया जा सकता है भले ही डिस्क पर पंक्तियां इंडेक्स में पहली हों।

संबंधित मुद्दे