Liebe Com,
ich versuche gerade verzweifelt in einem Android Projekt eine SQLite-DB zu benutzen.Leider kenne ich mich damit nicht perfekt aus und komme gerade nicht weiter bzw weiß nciht wieso mein "Plan" nicht funktioniert.Ich habe eine einface DB-Tabelle erstellt mit folgendem Aufruf:
später, füge ich ( 15 Stk. ) Objekte ein durch folgenden aufruf :
Dann möchte ich irgendwann auf eben diese Werte zugreifen.Aber egal was ich versuche ( selbst ohne "WHERE" komme ich auf maximal ein Ergebnis, obwohl ich in der vorherigen Methode 15 Items einpflege.
Könnt ihr mir sagen was ich falsch mache oder wie ich dem Problem näher kommen kann?
Danke im vorraus Kooki
ich versuche gerade verzweifelt in einem Android Projekt eine SQLite-DB zu benutzen.Leider kenne ich mich damit nicht perfekt aus und komme gerade nicht weiter bzw weiß nciht wieso mein "Plan" nicht funktioniert.Ich habe eine einface DB-Tabelle erstellt mit folgendem Aufruf:
Java:
sql = "create table if not exists " + tableName+ "(id integer primary key, name varchar(100), type varchar(5))";
db.execSQL(sql);
später, füge ich ( 15 Stk. ) Objekte ein durch folgenden aufruf :
Java:
public void addItem(int pID, List<Item> pItemList)
{
for (Item _item : pItemList)
{
ContentValues tmp = new ContentValues();
tmp.put("id", pID);
tmp.put("name", _item.getName());
tmp.put("type", _item.getItemType());
database.insertWithOnConflict(tableName, null, tmp, SQLiteDatabase.CONFLICT_REPLACE);
tmp.clear();
}
}
Dann möchte ich irgendwann auf eben diese Werte zugreifen.Aber egal was ich versuche ( selbst ohne "WHERE" komme ich auf maximal ein Ergebnis, obwohl ich in der vorherigen Methode 15 Items einpflege.
Java:
public List<String> findItemNames(int pID)
{
Cursor cursor = database.query(tableName, null, "id="+pID, null, null, null, null, null);
if(cursor.getCount() == 0)
{
cursor.close();
return null;
}
List<String> resultlist = new ArrayList<String>();
if(cursor.moveToFirst())
{
while (cursor.getPosition()!= cursor.getCount())
{
resultlist.add(cursor.getString( cursor.getColumnIndex("name")));
if(!cursor.moveToNext())
break;
};
}
cursor.close();
return resultlist;
}
Könnt ihr mir sagen was ich falsch mache oder wie ich dem Problem näher kommen kann?
Danke im vorraus Kooki