मुझे पता है कि यह सिम्पल होना चाहिए और शायद मैं समस्या पर सीधे देख रहा हूं लेकिन एक बार फिर मैं अटक गया और कोड गुरु की मदद की आवश्यकता है।भंडारण परिणाम एक सरणी में सेट
मैं jdbc में कॉलम से एक पंक्ति भी ले रहा हूं, और उन्हें एक सरणी में डाल रहा हूं।
मैं यह नहीं इस प्रकार है:
public void fillContactList()
{
createConnection();
try
{
Statement stmt = conn.createStatement();
ResultSet namesList = stmt.executeQuery("SELECT name FROM Users");
try
{
while (namesList.next())
{
contactListNames[1] = namesList.getString(1);
System.out.println("" + contactListNames[1]);
}
}
catch(SQLException q)
{
}
conn.commit();
stmt.close();
conn.close();
}
catch(SQLException e)
{
}
creatConnection एक पहले से ही परिभाषित विधि है कि करता है यह स्पष्ट रूप से क्या करता है। मैं अपना परिणाम बनाता हूं जबकि एक और, मैं उस कॉलम की स्ट्रिंग को सरणी में संग्रहीत करता हूं। फिर इसे अच्छे उपाय के लिए प्रिंट करें। यह भी सुनिश्चित करें कि वहां है।
समस्या यह है कि इसके भंडारण contactListNames में संपूर्ण स्तंभ [1]
मैं इसे [2]
में [1]तो स्तंभ 1 पंक्ति 2 में स्तम्भ 1 पंक्ति 1 की दुकान बनाना चाहते थे है
मुझे पता है कि मैं इसे एक लूप के साथ कर सकता हूं। लेकिन मुझे नहीं पता कि एक ही कॉलम से एक समय में केवल एक पंक्ति लेनी चाहिए। कोई विचार?
p.s ive api पढ़ें, मैं फिट बैठता कुछ भी नहीं देख सकता।
int i = 0;
ResultSet rs = stmt.executeQuery("select name from users");
while (rs.next()) {
String name = rs.getString("name");
names[i++] = name;
}
'परिणामसेट' में केवल एक कॉलम है (यानी 'नाम' जैसा कि आप अपनी क्वेरी से देख सकते हैं), लेकिन आप समय से पहले पंक्तियों की संख्या नहीं जानते हैं। तो एक सरणी का उपयोग करने के बजाय, आपको 'सूची' का उपयोग करने पर विचार करना चाहिए। –
'बंद' 'अंत में 'होना चाहिए। आप [यहां] (http://balusc.blogspot.com/2008/07/dao-tutorial-data-layer.html) कुछ उपयोगी विचार प्राप्त कर सकते हैं। – BalusC
अच्छी तरह से सरणी का अधिकतम आकार 5 था, इसलिए मुझे वास्तव में – OVERTONE