2010-10-15 5 views
0

I m en utilisant sqlite[NSString stringWithUTF8String: (char *) sqlite3_column_text (selectstmt, 0)];

i am geting une valeur de retour frmo DB de cette manière

returnCount = [NSString stringWithUTF8String:(char *)sqlite3_column_text(selectstmt,0)]; 

mais la valeur de returend est une valeur entière. comment puis-je obtenir une valeur int au lieu de paasing en string ... comme cette chose ici

[NSString stringWithUTF8String:(char *)sqlite3_column_text(selectstmt,0)]; 

est pour la chaîne, est-il possible de l'obtenir dans « entier » tout de suite, sinon je dois jette-le.

suggestions s'il vous plaît.

+0

Lors d'une publication ultérieure dans SO, placez quatre espaces avant chaque ligne d'un bloc de code et entourez les fragments de code en ligne avec des retours arrière. Cela rend les exemples de code beaucoup plus lisibles. Reportez-vous à la section [Aide à la modification des démarques de débordement de la pile] (http://stackoverflow.com/editing-help) pour plus de détails. –

Répondre

1

La réponse la plus simple, puisqu'il semble sais il va être un nombre entier, lisez-le comme un int avec sqlite3_column_int().

Cela dit, vous pouvez refactoriser votre code après avoir déposé FMDB. FMDB effectuera la conversion pour vous lorsque vous extrayez des données de colonnes entières ou flottantes. Dans votre cas, le résultat d'un SELECT count(*) FROM myTable... serait une seule colonne de type entier et le [resultSet valueForkey:@"count"] sera un NSNumber comme prévu.

+0

.. "sqlite3_column_int()." dat a travaillé pour moi ... merci un homme de ton – iscavengers

+0

Pour être juste, le plus simple est de simplement utiliser des données de base. ;) – bbum

+0

@bbum, Oui, Core Data bascule, mais ce n'était pas la question. –

Questions connexes