sql >> Database >  >> RDS >> SQLite

Hoe een rij in SQLite te krijgen op index (niet op id)

De betere route is om de id van het record op te halen van het object dat wordt vertegenwoordigd door ListView item en gebruik dat vervolgens om het juiste record in de database te krijgen. In uw ListView 's OnItemClickListener , de onItemClick evenement neemt de AdapterView als het eerste argument en de index van het geselecteerde item als het tweede. Haal dat item uit de adapter en cast het naar het type dat het vertegenwoordigt.

public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
    YourClass c = (YourClass)arg0.getItemAtPosition(arg2);
    //index of the record to delete can now be accessed at c.id
}

Als u echter echt de nth . wilt hebben record, ik geloof dat je het volgende kunt doen:

SELECT * FROM TableName LIMIT 1 OFFSET n;

Waarbij n de index is die u zoekt. Dit veronderstelt ook dat uw resultaten op dezelfde manier zijn gerangschikt als in uw ListView .



  1. MySQL invoegen vanuit de ene database in een andere

  2. ORA-28001:Het wachtwoord is verlopen

  3. Alleen de verschillende waarden toevoegen met SQLite Sum()

  4. Hoe het totale aantal geretourneerde rijen opnemen in de resultatenset van de opdracht SELECT T-SQL?