- Το for δεν ξέρω αν είναι σωστό ή λάθος γιατί δεν γνωρίζω σε τι εφαρμογή το χρησιμοποιείς. Το οτι βάζεις όμως το c σε παρένθεση χωρίς να χρησιμοποιείς array index, δεν μου φαίνεται σωστό.
Για δοκίμασε κάτι τέτοιο:
row = cur.fetchall()
for data in row:
print data
- Εκεί που λες οτι μετράς με τον μετρητή τρέξε αυτό:
SELECT COUNT(id) FROM granules
Αν θέλεις επιβεβαίωσέ το και με ένα
SELECT MAX(id), MIN(id) FROM granules
Ο μετρητής πιθανός να σου δείχνει λάθος αν δεν έχει μπει σωστά ο κώδικας.
Ακόμα καλύτερα, στην αρχή είναι προτιμότερο να συνδέεσαι από sqlite shell για να βλέπεις από εκεί τις εγγραφές σου, ώσε να καταλαβαίνεις πιο εύκολα αν φταίει το query ή το connection ή τα data κ.λ.π. κ.λ.π.
- Μην δημιουργείς όλα σου τα πεδία ως text.
Θα έχεις προβλήματα γιατί ή sqlite δεν θα μπορεί να διαχειριστεί σωστά τα δεδομένα, θα σου αργεί στo SELECT χωρίς λόγο, θα σου δεσμεύει χώρο που δεν θα χρησιμοποιεί και διάφορα άλλα.