code: @Override
      public void setStatementParameters(PreparedStatement statement, boolean setDefaultId) throws SQLException {
          int oneBasedIndex = 1;
          if (!setDefaultId) statement.setInt(oneBasedIndex++, id);
          DateField dateField = (DateField) Table.CALENDAR_DATES.getFieldForName("date");
          statement.setString(oneBasedIndex++, service_id);
          dateField.setParameter(statement, oneBasedIndex++, date);
          setIntParameter(statement, oneBasedIndex++, exception_type);
      }
docs: Sets the parameters for a prepared statement following the parameter order defined in
  {@link com.conveyal.gtfs.loader.Table#CALENDAR_DATES}. JDBC prepared statement parameters use a one-based index.