SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

Como obter uma linha no SQLite por índice (não por id)


O melhor caminho a percorrer será buscar o id do registro do objeto representado por ListView item e, em seguida, use-o para obter o registro correto no banco de dados. Em seu ListView 's OnItemClickListener , o onItemClick evento leva o AdapterView como o primeiro argumento e o índice do item selecionado como o segundo. Obtenha esse item do adaptador e converta-o no tipo que ele representa.
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
}

No entanto, se você realmente deseja obter o registro, acredito que você pode fazer o seguinte:
SELECT * FROM TableName LIMIT 1 OFFSET n;

Onde n é o índice que você procura. Isso também pressupõe que seus resultados sejam ordenados da mesma maneira que estão em seu ListView .