Je commence à utiliser SQLite dans mon application Android. Je ne suis pas novice en matière de bases de données, j'ai travaillé pendant de nombreuses années sur des bases de données avec Delphi, ce qui facilite un peu l'utilisation des bases de données.
Dans une application, on peut avoir un tableau avec plusieurs colonnes. Pour lire les données de la table, on exécute du SQL, puis on utilise un curseur pour accéder aux données.
Il existe plusieurs méthodes d'accès aux données par le curseur, l'une d'entre elles utilise l'index de la colonne dans la table - de nombreux exemples que j'ai vus sur le net utilisent cette méthode. Par exemple :
cursor.getString(3);
Avoir le "3" intégré dans le code n'est pas la meilleure idée, vous pouvez donc utiliser :
int idx = cursor.getColumnIndex( "THECOLUMNNAME" );
cursor.getString(idx);
Utiliser getColumnIndex() plus d'une fois pour une table et une colonne est un gaspillage. Conserver les constantes des index de ce qui pourrait être plusieurs dizaines ou centaines de colonnes est source d'erreurs.
Ma question est la suivante : quelle est la meilleure pratique pour faire ce genre de choses ?
Devrais-je étendre le curseur pour mieux représenter une table spécifique ?
Merci,
Mike