I'm trying to insert and recover data from a table in SQLite in Android. But, I'm getting this error:
android.database.sqlite.SQLiteException: table produto has no column named cor (code 1): , while compiling: INSERT INTO produto(cor,tamanho,idproduto,material,descricao,valor,classificacao) VALUES (?,?,?,?,?,?,?)
Here is my "Produto" basecolumn:
public static abstract class ProdutosDAO implements BaseColumns {
    public final static String TABLE_NAME = "produto";
    public final static String COLUMN_NAME_ID_PRODUTO = "idproduto";
    public final static String COLUMN_NAME_DESCRICAO = "descricao";
    public final static String COLUMN_NAME_VALOR = "valor";
    public final static String COLUMN_NAME_CLASSIFICACAO = "classificacao";
    public final static String COLUMN_NAME_MATERIAL = "material";
    public final static String COLUMN_NAME_TAMANHO = "tamanho";
    public final static String COLUMN_NAME_COR = "cor";
    public final static String CREATE_TABLE = "CREATE TABLE IF NOT EXISTS "+ ProdutosDAO.TABLE_NAME + " (" +
            ProdutosDAO._ID + PRIMARY_KEY +
            ProdutosDAO.COLUMN_NAME_ID_PRODUTO + INTEGER_TYPE + UNIQUE_INDEX + COMMA_SEP +
            ProdutosDAO.COLUMN_NAME_DESCRICAO + VARCHAR_TYPE + "150)"+ COMMA_SEP +
            ProdutosDAO.COLUMN_NAME_VALOR + DOUBLE_TYPE + COMMA_SEP +
            ProdutosDAO.COLUMN_NAME_CLASSIFICACAO + INTEGER_TYPE  + COMMA_SEP +
            ProdutosDAO.COLUMN_NAME_MATERIAL + INTEGER_TYPE +  COMMA_SEP +
            ProdutosDAO.COLUMN_NAME_TAMANHO + INTEGER_TYPE  + COMMA_SEP +
            ProdutosDAO.COLUMN_NAME_COR + INTEGER_TYPE + ");";
    public final static String DROP_TABLE = "DROP TABLE IF EXISTS " + ProdutosDAO.TABLE_NAME;
    public final static String[] ALL_COLUMNS = {ProdutosDAO._ID,
        COLUMN_NAME_ID_PRODUTO,
        COLUMN_NAME_DESCRICAO,
        COLUMN_NAME_VALOR,
        COLUMN_NAME_CLASSIFICACAO,
        COLUMN_NAME_MATERIAL,
        COLUMN_NAME_TAMANHO,
        COLUMN_NAME_COR
    };
}
I have some static variables to types too:
// Types definition
public final static String VARCHAR_TYPE = " VARCHAR(";
public final static String INTEGER_TYPE = " INTEGER";
public final static String DOUBLE_TYPE = " DOUBLE";
To to create this table I'm just using:
db.execSQL(SisLojaBanco.ProdutosDAO.CREATE_TABLE);
Well, I'm completly lost, and don't know whats happening.
Can someone help me please?
Thanks a lot,
Mathias
I'm trying to insert values this way:
ContentValues values = new ContentValues();
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_ID_PRODUTO, "1");
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_DESCRICAO, "'Barbel Titanio 2mm Preto Com Brilho'");
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_VALOR, 50.0);
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_CLASSIFICACAO, "4"); // Barbel
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_MATERIAL, "1"); // Titanio
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_TAMANHO, "1"); // 2mm
    values.put(SisLojaBanco.ProdutosDAO.COLUMN_NAME_COR, "3"); // Preto
    save(values);
