मुझे SQLite के लिए जेडीबीसी ड्राइवर में कोई समस्या है।जेडीबीसी चालक खाली परिणामसेट पर 0 परिणाम "परिणाम सेट बंद" अपवाद
मैं SELECT कथन के साथ एक क्वेरी निष्पादित कर रहा हूं।
यदि मुझे खाली ResultSet
(0 पंक्तियां) मिलती हैं तो मुझे getString(1)
पर कॉल करते समय "बंद परिणाम परिणाम" अपवाद दिखाई देता है।
, मेरे सिद्धांत (जो मैं ResultSet
के लिए Javadocs के माध्यम से इस बात की पुष्टि नहीं कर सकता है) कि
getString(1)
एक खाली (शून्य पंक्ति) resultset पर काम नहीं करता है (डिजाइन द्वारा या की वजह से है एक बग)ResultSet
के "खुले" झंडा फिर से शून्य पंक्तियाँ (परfalse
के लिए सेट है, डिजाइन या एक बग)
से मैं इस bug report देखा था, लेकिन यकीन नहीं है अगर यह संबंधित है ।
मेरे qeustions हैं:
- सही ऊपर सिद्धांत है?
- क्या यह एक बग है? फ़ीचर? (और यदि हां, तो क्या कोई दस्तावेज़ीकरण को इंगित कर सकता है?)
- क्या यह सभी जेडीबीसी ड्राइवरों में एसक्यूएलटीई के जेडीबीसी या जेनेरिक
ResultSet
के लिए विशिष्ट है? - इस तरह की चीजें करने का सही तरीका क्या है??
# 4 के लिए, मेरे समाधान की जाँच करने के लिए कि क्या किसी भी पंक्तियों परिणाम सेट में देखते हैं सही executeQuery()
के बाद isFirst()
कॉल उपयोग करने के लिए किया गया था। क्या यह सबसे अच्छा अभ्यास दृष्टिकोण है?
(मैं बस एक गिनती इंसेटैड का चयन भी कर सकता था क्योंकि मुझे वास्तव में परिणाम सेट की आवश्यकता नहीं थी, केवल शून्य-गैरजेरो ध्वज, लेकिन अगर मैं चयन के परिणामों की परवाह करता हूं तो मैं सही काम करना चाहता हूं)
धन्यवाद!
सभी को धन्यवाद की तरह इस्तेमाल कर सकते हैं इस समस्या के इस तरह के लिए! बहुत रोशनी! – DVK