Problemas com tabelas no android

Olá! Tudo bem, pessoas?
Estou com o seguinte problema: Minha aplicação possui a table USUARIO em perfeito funcionamento com minha LoginActivity e a DAO correspondente, porém numa segunda activity (CriarItemActivity) e DAO (ItemDAO) tento acrescentar uma nova tabela ao banco e me vem o erro

10-20 18:11:51.029 20286-20286/com.rimaria.apsoo.orcamentaria E/SQLiteLog: (1) no such table: ITEMCAD
10-20 18:11:51.110 20286-20286/com.rimaria.apsoo.orcamentaria E/SQLiteDatabase: Error inserting TAMANHO=2.0 VALOR=3.0 NOME=teste MILI=1.0
android.database.sqlite.SQLiteException: no such table: ITEMCAD (code 1): , while compiling: INSERT INTO ITEMCAD(TAMANHO,VALOR,NOME,MILI) VALUES (?,?,?,?)

at com.rimaria.apsoo.orcamentaria.dao.DaoItem.insereItem(DaoItem.java:68)
at com.rimaria.apsoo.orcamentaria.CriarItemActivity$1.onClick(CriarItemActivity.java:45)"

O código do Helper:

    public static final String NOME_BD = "APPorcamentaria";
    public static final int VERSAO_BD = 1;
    private String scriptCreate, scriptDelete;

    public DBHelper(Context context, String NOME_BD, int VERSAO_BD, String scriptCreate, String scriptDelete) {
        super(context, NOME_BD, null, VERSAO_BD);

        this.scriptCreate = scriptCreate;
        this.scriptDelete = scriptDelete;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(scriptCreate);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL(scriptDelete);
        onCreate(db);
    }

O código do DAO:

public class DaoItem {
    private String scriptSqlCreate = "CREATE TABLE ITEMCAD (ID INTEGER PRIMARY KEY AUTOINCREMENT, NOME VARCHAR(50) not null, MILI real, TAMANHO real not null, VALOR real not null);";

    private String scriptSqlDelete = "DROP TABLE IF EXISTS ITEMCAD";
    private static final String NOME_TABELA = "ITEMCAD";

    private DBHelper dbHelper;
    private SQLiteDatabase db;

    private String[] getColunasTabUsuario(){
        String[] UsuarioColunasTab = new String[]{"ID", "NOME", "MILI", "TAMANHO", "VALOR"};
        return UsuarioColunasTab;
    }

    public DaoItem(Context ctx){

        try {
            dbHelper = new DBHelper(ctx, DBHelper.NOME_BD, DBHelper.VERSAO_BD, scriptSqlCreate, scriptSqlDelete);
            if (db == null){
                db = dbHelper.getWritableDatabase();
            }
        }catch (Exception e){
            Log.e("Erro: ", e.getMessage());
        }
    }

    public void close(){
        if(db != null){
            if(!db.isOpen()){
                db.close();
            }
        }
    }

    public void dropTable(String TableName){
        db.delete(TableName, null, null);
    }

    public ContentValues contentItem(ModelItem modelItem){
        ContentValues values = new ContentValues();

        values.put("NOME",  modelItem.getItemName());
        values.put("MILI",  modelItem.getItemMilimetragem());
        values.put("TAMANHO",  modelItem.getItemTamanho());
        values.put("VALOR",  modelItem.getItemValor());

        return values;
    }

    public long insereItem(ModelItem novoModelItem){
        long id = 0;
        try{
            ContentValues values = contentItem(novoModelItem);
            id = db.insert(NOME_TABELA, null, values);
        }catch (Exception e){
            Log.e("Erro: ", e.getMessage());
        }
        return id;
    }

O código da Activity:

bSaveItem.setOnClickListener(new View.OnClickListener(){

            @Override
            public void onClick(View v) {


                if(etNomeItem.getText().length()==0 || etMilimetragem.getText().length()==0
                        || etTamanho.getText().length()==0 || etValor.getText().length()==0){
                    Toast.makeText(getApplication(),
                            "Todos os campos sao obrigatorios",
                            Toast.LENGTH_SHORT).show();
                }else{
                    item.setItemName(etNomeItem.getText().toString());
                    item.setItemMilimetragem(Double.parseDouble(etMilimetragem.getText().toString()));
                    item.setItemTamanho(Double.parseDouble(etTamanho.getText().toString()));
                    item.setItemValor(Double.parseDouble(etValor.getText().toString()));
                item.setItemId(objItem.insereItem(item));
                Toast.makeText(getApplication(),
                        "Item cadastrado. " + item.getItemId(),
                        Toast.LENGTH_SHORT).show();
            }
        }
    });

Espero que possam ajudar, estou a muito tempo tentando encontrar o erro. :confused:

O banco já foi criado, verifique se o Android está chamando o método onCreate do seu dbHelper.
Caso o banco já esteja criado ele não chamará esse método novamente a não ser que incremente a versão do banco ou limpe os dados da aplicação.

Tente chamar db.execSQL passando a SQL de criação da tabela no onCreate da Activity, caso não possa limpar os dados.