docs: @Override
    public final synchronized int getIdDatabase() {
      if (this.idDatabase == 0) {
        try {
          String query = "select count(*) as TOTALROWS from " + DatabaseInfo.class
            .getSimpleName().toUpperCase() + ";";
          Integer rowCount = evalIntegerResult(query, "TOTALROWS");
          if (rowCount != 1) {
            throw new ExceptionWithCode(ExceptionWithCode.CONFIGURATION_MISTAKE,
              "database_info_config_error");
          }
          query = "select DATABASEID from " + DatabaseInfo.class
            .getSimpleName().toUpperCase() + ";";
          Integer databaseId = evalIntegerResult(query, "DATABASEID");
          if (databaseId == null) {
            throw new ExceptionWithCode(ExceptionWithCode.CONFIGURATION_MISTAKE,
              "database_info_config_error");
          }
          this.idDatabase = databaseId;
        } catch (Exception e) {
          throw new RuntimeException(e);
        }
      }
      return this.idDatabase;
    }