Question

Je travaille actuellement sur un projet pour iPhone qui nécessite l'accès à une grande quantité de données hiérarchiques stockées dans une base de données sqlite locale. L'une des opérations les plus courantes consiste à calculer un champ d'état de cumul. Pour le moment, je le fais en récursant à travers tous les descendants de cet élément (qui peut aller de 1 à n niveaux). Cependant, cela finit par nécessiter beaucoup d'appels SQL. Chaque appel sqlite sur un iPhone prend environ 250 ms, ce qui représente finalement environ 7,7 secondes de temps de traitement. Quelqu'un a-t-il des suggestions pour faire quelque chose comme ça en moins de temps (n)? Je pense que la racine du problème est le grand nombre d'appels SQL effectués, c'est ce que je cherche à réduire.

Était-ce utile?

La solution

Vous avez besoin d'une organisation de table différente. Consultez la Gestion des données hiérarchiques dans MySQL ou à Le livre de Joe Celko .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top