SQL(query) error or missing database. (near "autoincrement": syntax error : # O ERRO IS IN THE TABLE CARTAO #
public class BD_BDCORE extends SQLiteOpenHelper {

    private static final String NOME_BANCO = "immunize_db";
    private static final int VERSAO_BANCO = 1;

    public BD_BDCORE(Context ctx){
        super(ctx, NOME_BANCO, null, VERSAO_BANCO);
    }

    //Cria um novo banco
    @Override
    public void onCreate(SQLiteDatabase db){

        db.execSQL("create table cartao(_id integer primary autoincrement, nome text not null);");
        db.execSQL("create table vacina(idCartao long not null, _id integer primary autoincrement, nome text not null, descricao text not null);");
        db.execSQL("create table remedio(_id integer primary autoincrement, nome text not null);");

        db.execSQL("SELECT * FROM CARTAO;");
    }

  
    @Override
    public void onUpgrade(SQLiteDatabase db, int versaoAntiga, int novaVersao) {

        db.execSQL("drop table cartao;");
        onCreate(db);
    }

================================================================================

public class BD_BD {

    private static SQLiteDatabase bd;

    private static int CARTAO_ID = 0;
    private static int CARTAO_PERIODO = 1;

    private static int VACINA_ID = 1;
    private static int VACINA_NOME = 2;
    private static int VACINA_LEGENDA = 3;

    public BD_BD(Context context){
        BD_BDCORE auxDb = new BD_BDCORE(context);
        bd = auxDb.getWritableDatabase();
    }

    public static List<Cartao> getCartoes(Context ctx){
        List<Cartao> list = new ArrayList<Cartao>();
        String[] colunas = new String[]{"_id", "nome"};

        Cursor cursor = bd.query("cartao", colunas, null, null, null, null, null);

        if(cursor.getCount() > 0){
            cursor.moveToFirst();
            do{
                Cartao c = new Cartao();
                c.setId(cursor.getLong(CARTAO_ID));
                c.setPeriodo(cursor.getString(CARTAO_PERIODO));
                list.add(c);
            }while (cursor.moveToNext());
        }
        return (list);
    }
================================================================================
public class CartaoActivity extends AppCompatActivity implements AdapterView.OnItemClickListener{

    BD_BD banco;
    CartaoAdapter adapter;
    List<Cartao> cartoes;
    public  static String ID_CARTAO_SELECTED = "ID_CARTAO_SELECTED";

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        setContentView(R.layout.cartao);
        super.onCreate(savedInstanceState);
        ActionBar ab = getSupportActionBar();
        ab.setDisplayHomeAsUpEnabled(true);
        ab.setBackgroundDrawable(getResources().getDrawable(R.drawable.cartao_de_vacina_meses_titulo));

       
        banco = new BD_BD(this);
        cartoes = banco.getCartoes(this);
        ListView cartaoList = (ListView) findViewById(R.id.listaCartao);
        cartaoList.setOnItemClickListener(this);
        CartaoAdapter adapter = new CartaoAdapter(this, cartoes);
        cartaoList.setAdapter(adapter);

    }

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Cartao cartao = cartoes.get(position);

        if (cartao != null) {
            Intent intent = new Intent(this, VacinasActivity.class);
            intent.putExtra(ID_CARTAO_SELECTED, cartao.getId());
            startActivity(intent);
        }
    }strong text