2009-08-15 5 views
12

मेरे पास डेटा का एक गुच्छा है जिसे मैं सम्मिलित करना चाहता हूं और मैंने mysql के लिए थोक डालने का निर्णय लिया है। मित्रों मेंथोक mysql डालें - क्या मैं अनदेखा खंड का उपयोग कर सकता हूं? क्या कोई सीमा नहीं है। थोक डालने के लिए रिकॉर्ड के?

डालने (अनुरोधकर्ता, साथी) मूल्यों (मान 1, मान 2), (मान 2, मान 1), (value3, VALUE4), (VALUE4, value3), ...

मैं जानना चाहूंगा निम्नलिखित:

1) क्या मैं अनदेखा कर सकता हूं? जैसे

डालने मित्र (अनुरोधकर्ता, साथी) मूल्यों (मान 1, मान 2), (मान 2, मान 1), (value3, VALUE4), (VALUE4, value3), में की अनदेखी ...

क्या अगर मैं होता डुप्लिकेट है? क्या यह सब कुछ नहीं डालेगा? बी) डुप्लिकेट रिकॉर्ड से पहले रिकॉर्ड डालें और इसके बाद डेटा को प्रोसेस करना बंद करें? सी) डुप्लिकेट को अनदेखा करें और बाकी के साथ आगे बढ़ें?

2) संख्या के लिए कोई सीमा है। रिकॉर्ड के रूप में मैं इस तरह एक थोक डालने के लिए उपयोग कर सकते हैं?

धन्यवाद।

उत्तर

19

हां, आप "अनदेखा" कीवर्ड का उपयोग कर सकते हैं, और यह केवल डुप्लिकेट त्रुटियों को अनदेखा कर देगा। यह उन सभी पंक्तियों को सम्मिलित करेगा जो डुप्लिकेट का कारण बनेंगे (और यह डेटा प्रोसेसिंग को रोक नहीं पाएगा।) यदि आप ऐसा कुछ करते हैं (जहां हम मानते हैं कि पहला कॉलम प्राथमिक कुंजी है):

सी मूल्यों (1,1), (2,2), (3,3), (3,5), (4,5) में अनदेखा डालें;

तब इसका मतलब है कि (3,3) डाला जाएगा और (3,5) नहीं होगा। सबकुछ लेकिन (3,5) डाला जाएगा (एक ताजा टेबल मानते हैं।)

शायद कोई कठोर सीमा नहीं है, लेकिन आप यह देखने के लिए परीक्षण करना चाहेंगे कि आपको अपनी आवश्यकताओं के आधार पर रेखा को कहां खींचना चाहिए।

संपादित करें: ऐसा लगता है कि MySQL में SQL क्वेरी के आकार पर कॉन्फ़िगर करने योग्य सीमा है, डिफ़ॉल्ट रूप से 1 एमबी है। अधिक जानकारी: http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_query_cache_limit

6

आईएनएसईआरटी क्वेरी में 50,000 पंक्तियों की सीमा भी है।