sql >> Database teknologi >  >> RDS >> SQLite

Sådan får du en række i SQLite efter indeks (ikke efter id)

Den bedre vej at gå vil være at hente postens id fra objektet repræsenteret af ListView element og derefter bruge det til at få den korrekte post i databasen. I din ListView 's OnItemClickListener , onItemClick hændelsen tager AdapterView som det første argument og indekset for det valgte element som det andet. Hent emnet fra adapteren og støb det til den type, det repræsenterer.

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
}

Men hvis du virkelig ønsker at få den nth optage, tror jeg, du kan gøre følgende:

SELECT * FROM TableName LIMIT 1 OFFSET n;

Hvor n er det indeks, du leder efter. Dette forudsætter også, at dine resultater er ordnet på samme måde, som de er i din ListView .



  1. Opdater en materialiseret visning automatisk ved hjælp af en regel eller notifikation

  2. Regneark vs. databaser:Er det tid til at skifte? Del 1

  3. Fatal fejl:Kald til udefineret funktion session_register()

  4. Søg tekst i lagret procedure i SQL Server