Sembra che alcuni valori che stai inserendo potrebbero essere NULL per i campi NOT NULL (ConsumerName nel tuo caso) o PK(_id nel tuo caso) esiste già. Il codice di errore 19 indica che un vincolo di tabella (NON NULL, UNIQUE, ecc.) è stato violato durante l'operazione (INSERT, ecc.). Ecco l'elenco dei codici di errore SQLITE
[email protected] è un valore spazzatura assegnato a ConsumerName. Quindi, per favore, esegui una soluzione alternativa per ottenere il tuo FK corretto per ConsumerName dal cursore.
C'è qualcosa che non va in te SimpleCursorAdapter. Quindi, per favore, guardalo. Se stai ottenendo valori corretti in spinner, ottieni il valore selezionato da spineer come questo spinner.getSelectedItem().toString();
invece di spinner.getItemAtPosition(mSpinnerSpeciesId).toString()
.
Spero che questo ti aiuti.