code: public void onUpgradeDatabase(SQLiteDatabase database, int oldVersion, int newVersion) {
  		for (ContractHolder contract : contracts) {
  			if (!openHelper.hasTableInDatabase(database, contract)) {
  				openHelper.createTable(database, contract);
  			} else {
  				openHelper.addMissingColumnsInTable(database, contract);
  			}
  		}
  	}
docs: Called when the database needs to be upgraded. </br></br>
  Call {@code super.onUpgradeDatabase(database, oldVersion, newVersion)} to:
  <ul>
  <li>Automatically add columns if some are missing.</li>
  <li>Automatically create tables and needed columns for new added {@link Contract}s.</li>
  </ul>
  Anything else related to database upgrade should be done here.
  <p>
  This method executes within a transaction. If an exception is thrown, all changes
  will automatically be rolled back.
  </p>
  @param database The database.
  @param oldVersion The old database version (same as contract old version).
  @param newVersion The new database version (same as contract new version).