मैं जेडीबीसी के साथ एक डेटाबेस स्वतंत्र आवेदन लिखने की कोशिश कर रहा हूं। अब मुझे कुछ तालिका से शीर्ष एन प्रविष्टियों को लाने का एक तरीका चाहिए। मैंने देखा कि जेडीबीसी में setMaxRows
विधि है, लेकिन मुझे इसका उपयोग करने में सहज महसूस नहीं होता है, क्योंकि मुझे डर है कि डेटाबेस सभी परिणामों को धक्का देगा, और केवल जेडीबीसी चालक परिणाम को कम करेगा। अगर मुझे एक अरब पंक्तियों वाली तालिका में शीर्ष 5 परिणामों की आवश्यकता है तो यह मेरी गर्दन तोड़ देगा (तालिका में उपयोग करने योग्य सूचकांक है)।जेडीबीसी सेटमैक्सरो डेटाबेस उपयोग
प्रत्येक प्रकार के डेटाबेस के लिए विशेष एसक्यूएल-स्टेटमेंट लिखना बहुत अच्छा नहीं है, लेकिन डेटाबेस को चतुर क्वेरी योजना बनाने और आवश्यक से अधिक परिणाम लाने से रोक देगा।
क्या मैं डेटाबेस को बताने के लिए setMaxRows
पर भरोसा कर सकता हूं?
मुझे लगता है कि सबसे खराब मामले में मैं इस काम पर भरोसा नहीं कर सकता हूं। मुझे ज्यादातर पोस्टग्रेस 9.1 और ओरेकल 11.2 में दिलचस्पी है, इसलिए यदि किसी को इन डेटाबेस के साथ अनुभव है, तो कृपया आगे बढ़ें।
अच्छा प्रश्न है। जावाडोक कहते हैं, "पंक्तियों है कि किसी भी ResultSet इस वक्तव्य वस्तु द्वारा उत्पन्न वस्तु दी गई संख्या को शामिल कर सकते हैं की अधिकतम संख्या के लिए सीमा सेट करता है। सीमा पार हो गई है, तो अतिरिक्त पंक्तियों चुपचाप गिरा रहे हैं।" जिस तरह से मैंने इसे पढ़ा, इसका तात्पर्य है कि जेडीबीसी चालक काम कर सकता है। मुझे अपने जेडीबीसी कार्यान्वयन पर संदेह है। –