SQLite
 sql >> डेटाबेस >  >> RDS >> SQLite

कर्सर डेटा को एक सरणी में रखना

names.add(cursor.getString(i));

"i" कर्सर पंक्ति अनुक्रमणिका नहीं है, यह स्तंभ अनुक्रमणिका है। एक कर्सर पहले से ही एक विशिष्ट पंक्ति में स्थित है। यदि आपको अपने कर्सर की स्थिति बदलने की आवश्यकता है। कर्सर का उपयोग करें। ले जाएँ या ले जाएँ ToXXXX (दस्तावेज़ीकरण देखें)।

GetString/Int/Long आदि के लिए आपको बस कर्सर को यह बताना होगा कि आपको कौन सा कॉलम चाहिए। यदि आप कॉलम इंडेक्स को नहीं जानते हैं तो आप cursor.getColumnIndex("yourColumnName") का उपयोग कर सकते हैं। .

आपका लूप इस तरह दिखना चाहिए:

public String[] getContacts(){
    Cursor cursor = getReadableDatabase().rawQuery("SELECT name FROM contacts", null);
    cursor.moveToFirst();
    ArrayList<String> names = new ArrayList<String>();
    while(!cursor.isAfterLast()) {
        names.add(cursor.getString(cursor.getColumnIndex("name")));
        cursor.moveToNext();
    }
    cursor.close();
    return names.toArray(new String[names.size()]);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एंड्रॉइड- क्या मुझे यह जांचना चाहिए कि तालिका SqliteHelper.onCreate () में मौजूद है या नहीं?

  2. SQLiteConnection वस्तु रिसाव को रोकने में असमर्थ

  3. एंड्रॉइड - मैं सामग्री प्रदाता की सम्मिलित विधि में दो तालिकाओं से संबंधित डेटा कैसे पास कर सकता हूं?

  4. स्क्लाइट में विदेशी कुंजी का उपयोग कैसे करें?

  5. SQLite AVG