Package org.jooq.impl

Class UpdatableRecordImpl<R extends UpdatableRecord<R>>

    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      void attach​(Configuration c)
      Attach this object to a new Configuration.
      boolean changed()
      Check if this record has been changed from its original as fetched from the database.
      void changed​(boolean c)
      Set all of this record's internal changed flags to the supplied value.
      boolean changed​(int fieldIndex)
      Check if a field's value has been changed from its original as fetched from the database.
      void changed​(int fieldIndex, boolean c)
      Set this record's internal changed flag to the supplied value for a given field.
      boolean changed​(java.lang.String fieldName)
      Check if a field's value has been changed from its original as fetched from the database.
      void changed​(java.lang.String fieldName, boolean c)
      Set this record's internal changed flag to the supplied value for a given field.
      boolean changed​(Field<?> field)
      Check if a field's value has been changed from its original as fetched from the database.
      void changed​(Field<?> field, boolean c)
      Set this record's internal changed flag to the supplied value for a given field.
      boolean changed​(Name fieldName)
      Check if a field's value has been changed from its original as fetched from the database.
      void changed​(Name fieldName, boolean c)
      Set this record's internal changed flag to the supplied value for a given field.
      int compareTo​(Record that)
      Compares this Record with another Record according to their natural ordering.
      Configuration configuration()
      Get the currently attached Configuration, or null if no Configuration is attached.
      R copy()
      Duplicate this record (in memory) and reset all fields from the primary key or main unique key, such that a subsequent call to UpdatableRecord.store() will result in an INSERT statement.
      protected DSLContext create()
      Deprecated.
      - 3.11.0 - [#6720] [#6721] - Use Attachable.configuration() and Configuration.dsl() instead.
      int delete()
      Deletes this record from the database, based on the value of the primary key or main unique key.
      void detach()
      Detach this object from its current Configuration.
      boolean equals​(java.lang.Object obj)  
      <O extends TableRecord<O>>
      O
      fetchChild​(ForeignKey<O,​R> key)
      Fetch a child record of this record, given a foreign key.
      <O extends TableRecord<O>>
      Result<O>
      fetchChildren​(ForeignKey<O,​R> key)
      Fetch child records of this record, given a foreign key.
      Field<?> field​(int index)
      Get a specific field from this Record.
      Field<?> field​(java.lang.String name)
      Get a specific field from this Record.
      <T> Field<T> field​(Field<T> field)
      Get a specific field from this Record.
      Field<?> field​(Name name)
      Get a specific qualified field from this Record.
      Field<?>[] fields()
      Get all fields from this Record.
      Field<?>[] fields​(int... fieldIndexes)
      Get all fields from this Record, providing some field indexes.
      Field<?>[] fields​(java.lang.String... fieldNames)
      Get all fields from this Record, providing some field names.
      Field<?>[] fields​(Field<?>... f)
      Get all fields from this Record, providing some fields.
      Field<?>[] fields​(Name... fieldNames)
      Get all fields from this Record, providing some field names.
      java.lang.String format()
      Get a simple formatted representation of this result.
      java.lang.String format​(int maxRecords)
      Get a simple formatted representation of this result.
      void format​(java.io.OutputStream stream)
      Like Formattable.format(), but the data is output onto an OutputStream.
      void format​(java.io.OutputStream stream, int maxRecords)
      Like Formattable.format(int), but the data is output onto an OutputStream.
      void format​(java.io.OutputStream stream, TXTFormat format)
      Like Formattable.format(TXTFormat), but the data is output onto an OutputStream.
      void format​(java.io.Writer writer)
      Like Formattable.format(), but the data is output onto a Writer.
      void format​(java.io.Writer writer, int maxRecords)
      Like Formattable.format(int), but the data is output onto a Writer.
      void format​(java.io.Writer writer, TXTFormat format)
      Like Formattable.format(TXTFormat), but the data is output onto a Writer.
      java.lang.String format​(TXTFormat format)
      Get a simple formatted representation of this result.
      java.lang.String formatChart()  
      void formatChart​(java.io.OutputStream stream)
      Like Formattable.formatChart(), but the data is output onto an OutputStream.
      void formatChart​(java.io.OutputStream stream, ChartFormat format)
      Like Formattable.formatChart(ChartFormat), but the data is output onto an OutputStream.
      void formatChart​(java.io.Writer writer)
      Like Formattable.formatChart(), but the data is output onto a Writer.
      void formatChart​(java.io.Writer writer, ChartFormat format)
      Like Formattable.formatChart(ChartFormat), but the data is output onto a Writer.
      java.lang.String formatChart​(ChartFormat format)  
      java.lang.String formatCSV()
      Get a simple formatted representation of this result as CSV.
      java.lang.String formatCSV​(boolean header)
      Get a simple formatted representation of this result as CSV.
      java.lang.String formatCSV​(boolean header, char delimiter)
      Get a simple formatted representation of this result as CSV.
      java.lang.String formatCSV​(boolean header, char delimiter, java.lang.String nullString)
      Get a simple formatted representation of this result as CSV.
      java.lang.String formatCSV​(char delimiter)
      Get a simple formatted representation of this result as CSV.
      java.lang.String formatCSV​(char delimiter, java.lang.String nullString)
      Get a simple formatted representation of this result as CSV.
      void formatCSV​(java.io.OutputStream stream)
      Like Formattable.formatCSV(), but the data is output onto an OutputStream.
      void formatCSV​(java.io.OutputStream stream, boolean header)
      Like Formattable.formatCSV(boolean), but the data is output onto an OutputStream.
      void formatCSV​(java.io.OutputStream stream, boolean header, char delimiter)
      Like Formattable.formatCSV(boolean, char), but the data is output onto an OutputStream.
      void formatCSV​(java.io.OutputStream stream, boolean header, char delimiter, java.lang.String nullString)
      Like Formattable.formatCSV(boolean, char, String), but the data is output onto an OutputStream.
      void formatCSV​(java.io.OutputStream stream, char delimiter)
      Like Formattable.formatCSV(char), but the data is output onto an OutputStream.
      void formatCSV​(java.io.OutputStream stream, char delimiter, java.lang.String nullString)
      Like Formattable.formatCSV(char, String), but the data is output onto an OutputStream.
      void formatCSV​(java.io.OutputStream stream, CSVFormat format)
      Like Formattable.formatCSV(CSVFormat), but the data is output onto an OutputStream.
      void formatCSV​(java.io.Writer writer)
      Like Formattable.formatCSV(), but the data is output onto a Writer.
      void formatCSV​(java.io.Writer writer, boolean header)
      Like Formattable.formatCSV(boolean), but the data is output onto a Writer.
      void formatCSV​(java.io.Writer writer, boolean header, char delimiter)
      Like Formattable.formatCSV(boolean, char), but the data is output onto a Writer.
      void formatCSV​(java.io.Writer writer, boolean header, char delimiter, java.lang.String nullString)
      Like Formattable.formatCSV(boolean, char, String), but the data is output onto a Writer.
      void formatCSV​(java.io.Writer writer, char delimiter)
      Like Formattable.formatCSV(char), but the data is output onto a Writer.
      void formatCSV​(java.io.Writer writer, char delimiter, java.lang.String nullString)
      Like Formattable.formatCSV(char, String), but the data is output onto a Writer.
      void formatCSV​(java.io.Writer writer, CSVFormat format)
      Like Formattable.formatCSV(CSVFormat), but the data is output onto a Writer.
      java.lang.String formatCSV​(CSVFormat format)
      Get a simple formatted representation of this result as CSV.
      java.lang.String formatHTML()
      Get a simple formatted representation of this result as HTML.
      void formatHTML​(java.io.OutputStream stream)
      Like Formattable.formatHTML(), but the data is output onto an OutputStream.
      void formatHTML​(java.io.Writer writer)
      Like Formattable.formatHTML(), but the data is output onto a Writer.
      java.lang.String formatInsert()
      Get this result as a set of INSERT statements.
      void formatInsert​(java.io.OutputStream stream)
      Like Formattable.formatInsert(), but the data is output onto an OutputStream.
      void formatInsert​(java.io.OutputStream stream, Table<?> table, Field<?>... f)
      Like Formattable.formatInsert(Table, Field...), but the data is output onto an OutputStream.
      void formatInsert​(java.io.Writer writer)
      Like Formattable.formatInsert(), but the data is output onto a Writer.
      void formatInsert​(java.io.Writer writer, Table<?> table, Field<?>... f)
      Like Formattable.formatInsert(Table, Field...), but the data is output onto an Writer.
      java.lang.String formatInsert​(Table<?> table, Field<?>... f)
      Get this result as a set of INSERT statements.
      java.lang.String formatJSON()
      Get a simple formatted representation of this result as a JSON array of array.
      void formatJSON​(java.io.OutputStream stream)
      Like Formattable.formatJSON(), but the data is output onto an OutputStream.
      void formatJSON​(java.io.OutputStream stream, JSONFormat format)
      Like Formattable.formatJSON(JSONFormat), but the data is output onto an OutputStream.
      void formatJSON​(java.io.Writer writer)
      Like Formattable.formatJSON(), but the data is output onto a Writer.
      void formatJSON​(java.io.Writer writer, JSONFormat format)
      Like Formattable.formatJSON(JSONFormat), but the data is output onto a Writer.
      java.lang.String formatJSON​(JSONFormat format)
      Get a simple formatted representation of this result as a JSON data structure, according to the format.
      java.lang.String formatXML()
      Get this result formatted as XML.
      void formatXML​(java.io.OutputStream stream)
      Like Formattable.formatXML(), but the data is output onto an OutputStream.
      void formatXML​(java.io.OutputStream stream, XMLFormat format)
      Like Formattable.formatXML(XMLFormat), but the data is output onto an OutputStream.
      void formatXML​(java.io.Writer writer)
      Like Formattable.formatXML(), but the data is output onto a Writer.
      void formatXML​(java.io.Writer writer, XMLFormat format)
      Like Formattable.formatXML(XMLFormat), but the data is output onto a Writer.
      java.lang.String formatXML​(XMLFormat format)
      Get this result formatted as XML.
      void from​(java.lang.Object source)
      Load data into this record from a source.
      void from​(java.lang.Object source, int... fieldIndexes)
      Load data into this record from a source, providing some field indexes.
      void from​(java.lang.Object source, java.lang.String... fieldNames)
      Load data into this record from a source, providing some field names.
      void from​(java.lang.Object source, Field<?>... f)
      Load data into this record from a source, providing some fields.
      void from​(java.lang.Object source, Name... fieldNames)
      Load data into this record from a source, providing some field names.
      protected void from​(Record source)
      This method was implemented with [#799].
      void fromArray​(java.lang.Object... array)
      Load data from an array into this record.
      void fromArray​(java.lang.Object[] array, int... fieldIndexes)
      Load data from an array into this record, providing some fields indexes.
      void fromArray​(java.lang.Object[] array, java.lang.String... fieldNames)
      Load data from an array into this record, providing some fields names.
      void fromArray​(java.lang.Object[] array, Field<?>... f)
      Load data from an array into this record, providing some fields.
      void fromArray​(java.lang.Object[] array, Name... fieldNames)
      Load data from an array into this record, providing some fields names.
      void fromMap​(java.util.Map<java.lang.String,​?> map)
      Load data from a map into this record.
      void fromMap​(java.util.Map<java.lang.String,​?> map, int... fieldIndexes)
      Load data from a map into this record, providing some field indexes.
      void fromMap​(java.util.Map<java.lang.String,​?> map, java.lang.String... fieldNames)
      Load data from a map into this record, providing some field names.
      void fromMap​(java.util.Map<java.lang.String,​?> map, Field<?>... f)
      Load data from a map into this record, providing some fields.
      void fromMap​(java.util.Map<java.lang.String,​?> map, Name... fieldNames)
      Load data from a map into this record, providing some field names.
      java.lang.Object get​(int index)
      Get a value from this record, providing a field index.
      <T> T get​(int index, java.lang.Class<? extends T> type)
      Get a converted value from this record, providing a field index.
      <U> U get​(int index, Converter<?,​? extends U> converter)
      Get a converted value from this record, providing a field index.
      java.lang.Object get​(java.lang.String fieldName)
      Get a value from this Record, providing a field name.
      <T> T get​(java.lang.String fieldName, java.lang.Class<? extends T> type)
      Get a converted value from this Record, providing a field name.
      <U> U get​(java.lang.String fieldName, Converter<?,​? extends U> converter)
      Get a converted value from this Record, providing a field name.
      <T> T get​(Field<?> field, java.lang.Class<? extends T> type)
      Get a converted value from this Record, providing a field.
      <T> T get​(Field<T> field)
      Get a value from this Record, providing a field.
      <T,​U>
      U
      get​(Field<T> field, Converter<? super T,​? extends U> converter)
      Get a converted value from this Record, providing a field.
      java.lang.Object get​(Name fieldName)
      Get a value from this Record, providing a field name.
      <T> T get​(Name fieldName, java.lang.Class<? extends T> type)
      Get a converted value from this Record, providing a field name.
      <U> U get​(Name fieldName, Converter<?,​? extends U> converter)
      Get a converted value from this Record, providing a field name.
      java.lang.Object getValue​(int index)
      Get a value from this record, providing a field index.
      <T> T getValue​(int index, java.lang.Class<? extends T> type)
      Get a converted value from this record, providing a field index.
      <T> T getValue​(int index, java.lang.Class<? extends T> type, T defaultValue)
      Deprecated.
      java.lang.Object getValue​(int index, java.lang.Object defaultValue)
      Deprecated.
      <U> U getValue​(int index, Converter<?,​? extends U> converter)
      Get a converted value from this record, providing a field index.
      <U> U getValue​(int index, Converter<?,​? extends U> converter, U defaultValue)
      Deprecated.
      java.lang.Object getValue​(java.lang.String fieldName)
      Get a value from this Record, providing a field name.
      <T> T getValue​(java.lang.String fieldName, java.lang.Class<? extends T> type)
      Get a converted value from this Record, providing a field name.
      <T> T getValue​(java.lang.String fieldName, java.lang.Class<? extends T> type, T defaultValue)
      Deprecated.
      java.lang.Object getValue​(java.lang.String fieldName, java.lang.Object defaultValue)
      Deprecated.
      <U> U getValue​(java.lang.String fieldName, Converter<?,​? extends U> converter)
      Get a converted value from this Record, providing a field name.
      <U> U getValue​(java.lang.String fieldName, Converter<?,​? extends U> converter, U defaultValue)
      Deprecated.
      <T> T getValue​(Field<?> field, java.lang.Class<? extends T> type)
      Get a converted value from this Record, providing a field.
      <T> T getValue​(Field<?> field, java.lang.Class<? extends T> type, T defaultValue)
      Deprecated.
      <T> T getValue​(Field<T> field)
      Get a value from this Record, providing a field.
      <T,​U>
      U
      getValue​(Field<T> field, Converter<? super T,​? extends U> converter)
      Get a converted value from this Record, providing a field.
      <T,​U>
      U
      getValue​(Field<T> field, Converter<? super T,​? extends U> converter, U defaultValue)
      Deprecated.
      <T> T getValue​(Field<T> field, T defaultValue)
      Deprecated.
      java.lang.Object getValue​(Name fieldName)
      Get a value from this Record, providing a field name.
      <T> T getValue​(Name fieldName, java.lang.Class<? extends T> type)
      Get a converted value from this Record, providing a field name.
      <U> U getValue​(Name fieldName, Converter<?,​? extends U> converter)
      Get a converted value from this Record, providing a field name.
      int hashCode()  
      int indexOf​(java.lang.String fieldName)
      Get a field's index from this record.
      int indexOf​(Field<?> field)
      Get a field's index from this record.
      int indexOf​(Name fieldName)
      Get a field's index from this record.
      <E> E into​(E object)
      Map resulting records onto a custom type.
      <E> E into​(java.lang.Class<? extends E> type)
      Map resulting records onto a custom type.
      Record into​(Field<?>... f)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1> Record1<T1> into​(Field<T1> field1)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2>
      Record2<T1,​T2>
      into​(Field<T1> field1, Field<T2> field2)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3>
      Record3<T1,​T2,​T3>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4>
      Record4<T1,​T2,​T3,​T4>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5>
      Record5<T1,​T2,​T3,​T4,​T5>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6>
      Record6<T1,​T2,​T3,​T4,​T5,​T6>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7>
      Record7<T1,​T2,​T3,​T4,​T5,​T6,​T7>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8>
      Record8<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9>
      Record9<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10>
      Record10<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11>
      Record11<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12>
      Record12<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13>
      Record13<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14>
      Record14<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15>
      Record15<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16>
      Record16<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17>
      Record17<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18>
      Record18<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19>
      Record19<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20>
      Record20<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19, Field<T20> field20)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21>
      Record21<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19, Field<T20> field20, Field<T21> field21)
      Copy this record into a new record holding only a subset of the previous fields.
      <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21,​T22>
      Record22<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21,​T22>
      into​(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19, Field<T20> field20, Field<T21> field21, Field<T22> field22)
      Copy this record into a new record holding only a subset of the previous fields.
      <R extends Record>
      R
      into​(Table<R> table)
      Map resulting records onto a custom record type.
      java.lang.Object[] intoArray()
      Convert this record into an array.
      java.util.List<java.lang.Object> intoList()
      Convert this record into a list.
      java.util.Map<java.lang.String,​java.lang.Object> intoMap()
      Return this record as a name/value map.
      java.sql.ResultSet intoResultSet()
      Generate an in-memory JDBC ResultSet containing the data of this Record.
      java.util.stream.Stream<java.lang.Object> intoStream()
      Convert this record into a stream.
      org.w3c.dom.Document intoXML()
      Get this result as XML.
      <H extends org.xml.sax.ContentHandler>
      H
      intoXML​(H handler)
      Get this result as XML using a SAX ContentHandler.
      <H extends org.xml.sax.ContentHandler>
      H
      intoXML​(H handler, XMLFormat format)
      Get this result as XML using a SAX ContentHandler.
      org.w3c.dom.Document intoXML​(XMLFormat format)
      Get this result as XML.
      Record key()
      A Record copy holding values for the Table.getPrimaryKey().
      <E> E map​(RecordMapper<Record,​E> mapper)
      Map this record into a custom mapper callback.
      java.lang.Object original​(int fieldIndex)
      Get an original value from this record as fetched from the database.
      java.lang.Object original​(java.lang.String fieldName)
      Get an original value from this record as fetched from the database.
      <T> T original​(Field<T> field)
      Get an original value from this record as fetched from the database.
      java.lang.Object original​(Name fieldName)
      Get an original value from this record as fetched from the database.
      void refresh()
      Refresh this record from the database.
      void refresh​(java.util.Collection<? extends Field<?>> refreshFields)
      Refresh parts of this record from the database.
      void refresh​(Field<?>... refreshFields)
      Refresh parts of this record from the database.
      void reset()
      Reset all values to their Record.original() values and all Record.changed() flags to false.
      void reset​(int fieldIndex)
      Reset a given value to its Record.original(int) value and its Record.changed(int) flag to false.
      void reset​(java.lang.String fieldName)
      Reset a given value to its Record.original(String) value and its Record.changed(String) flag to false.
      void reset​(Field<?> field)
      Reset a given value to its Record.original(Field) value and its Record.changed(Field) flag to false.
      void reset​(Name fieldName)
      Reset a given value to its Record.original(Name) value and its Record.changed(Name) flag to false.
      protected void set​(int index, java.lang.Object value)  
      <T> void set​(Field<T> field, T value)
      Set a value into this record.
      <T,​U>
      void
      set​(Field<T> field, U value, Converter<? extends T,​? super U> converter)
      Set a value into this record.
      protected void setValue​(int index, java.lang.Object value)
      Deprecated.
      - Use AbstractRecord.set(int, Object) instead
      <T> void setValue​(Field<T> field, T value)
      Set a value into this record.
      <T,​U>
      void
      setValue​(Field<T> field, U value, Converter<? extends T,​? super U> converter)
      Set a value into this record.
      int size()
      Get the number of fields of this record.
      int store()
      Store this record back to the database.
      int store​(java.util.Collection<? extends Field<?>> storeFields)
      Store parts of this record to the database.
      int store​(Field<?>... storeFields)
      Store parts of this record to the database.
      java.lang.String toString()  
      int update()
      Store this record back to the database using an UPDATE statement.
      int update​(java.util.Collection<? extends Field<?>> storeFields)
      Store parts of this record to the database using an UPDATE statement.
      int update​(Field<?>... storeFields)
      Store parts of this record to the database using an UPDATE statement.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • UpdatableRecordImpl

        public UpdatableRecordImpl​(Table<R> table)
    • Method Detail

      • store

        public final int store()
        Description copied from interface: UpdatableRecord
        Store this record back to the database.

        Depending on the state of the primary key's value, an UpdatableRecord.insert() or an UpdatableRecord.update() statement is executed.

        Statement type

        • If this record was created by client code, an INSERT statement is executed
        • If this record was loaded by jOOQ and the primary key value was changed, an INSERT statement is executed (unless Settings.isUpdatablePrimaryKeys() is set). jOOQ expects that primary key values will never change due to the principle of normalisation in RDBMS. So if client code changes primary key values, this is interpreted by jOOQ as client code wanting to duplicate this record.
        • If this record was loaded by jOOQ, and the primary key value was not changed, an UPDATE statement is executed.

        In either statement type, only those fields are inserted/updated, which had been explicitly set by client code, in order to allow for DEFAULT values to be applied by the underlying RDBMS. If no fields were modified, neither an UPDATE nor an INSERT will be executed.

        Automatic value generation

        Use UpdatableRecord.insert() or UpdatableRecord.update() to explicitly force either statement type.

        • IDENTITY columns

          If there is an IDENTITY column defined on the record's underlying table (see Table.getIdentity()), then the auto-generated IDENTITY value is refreshed automatically on INSERT's. Refreshing is done using Statement.getGeneratedKeys(), where this is supported by the JDBC driver. See also InsertQuery.getReturnedRecord() for more details

        • VERSION and TIMESTAMP columns

          jOOQ can auto-generate "version" and "timestamp" values that can be used for optimistic locking. If this is an UpdatableRecord and if this record returns fields for either Table.getRecordVersion() or Table.getRecordTimestamp(), then these values are set onto the INSERT or UPDATE statement being executed. On execution success, the generated values are set to this record. Use the code-generation configuration to specify naming patterns for auto-generated "version" and "timestamp" columns.

          Should you want to circumvent jOOQ-generated updates to these columns, you can render an INSERT or UPDATE statement manually using the various DSLContext.insertInto(Table), DSLContext.update(Table) methods.

        Optimistic locking

        If an UPDATE statement is executed and Settings.isExecuteWithOptimisticLocking() is set to true, then this record will first be compared with the latest state in the database. There are two modes of operation for optimistic locking:

        • With VERSION and/or TIMESTAMP columns configured

          This is the preferred way of using optimistic locking in jOOQ. If this is an UpdatableRecord and if this record returns fields for either Table.getRecordVersion() or Table.getRecordTimestamp(), then these values are compared to the corresponding value in the database in the WHERE clause of the executed DELETE statement.

        • Without any specific column configurations

          In order to compare this record with the latest state, the database record will be locked pessimistically using a SELECT .. FOR UPDATE statement. Not all databases support the FOR UPDATE clause natively. Namely, the following databases will show slightly different behaviour:

          • SQLDialect.CUBRID and SQLDialect.SQLSERVER: jOOQ will try to lock the database record using JDBC's ResultSet.TYPE_SCROLL_SENSITIVE and ResultSet.CONCUR_UPDATABLE.
          • SQLDialect.SQLITE: No pessimistic locking is possible. Client code must assure that no race-conditions can occur between jOOQ's checking of database record state and the actual UPDATE

          See SelectQuery.setForUpdate(boolean) for more details

        Statement examples

        Possible statements are

        •  INSERT INTO [table] ([modified fields, including keys])
           VALUES ([modified values, including keys])
        •  UPDATE [table]
           SET [modified fields = modified values, excluding keys]
           WHERE [key fields = key values]
           AND [version/timestamp fields = version/timestamp values]

        Statement execution enforcement

        If you want to enforce statement execution, regardless if the values in this record were changed, you can explicitly set the changed flags for all values with Record.changed(boolean) or for single values with Record.changed(Field, boolean), prior to storing.

        This is the same as calling record.store(record.fields())

        Specified by:
        store in interface UpdatableRecord<R extends UpdatableRecord<R>>
        Returns:
        1 if the record was stored to the database. 0 if storing was not necessary.
        See Also:
        UpdatableRecord.insert(), UpdatableRecord.update()
      • update

        public final int update()
        Description copied from interface: UpdatableRecord
        Store this record back to the database using an UPDATE statement.

        This is the same as UpdatableRecord.store(), except that an UPDATE statement (or no statement) will always be executed.

        If you want to enforce statement execution, regardless if the values in this record were changed, you can explicitly set the changed flags for all values with Record.changed(boolean) or for single values with Record.changed(Field, boolean), prior to updating.

        This is the same as calling record.update(record.fields())

        Specified by:
        update in interface UpdatableRecord<R extends UpdatableRecord<R>>
        Returns:
        1 if the record was stored to the database. 0 if storing was not necessary.
        See Also:
        UpdatableRecord.store()
      • update

        public final int update​(java.util.Collection<? extends Field<?>> storeFields)
        Description copied from interface: UpdatableRecord
        Store parts of this record to the database using an UPDATE statement.
        Specified by:
        update in interface UpdatableRecord<R extends UpdatableRecord<R>>
        Returns:
        1 if the record was stored to the database. 0 if storing was not necessary.
        See Also:
        UpdatableRecord.update()
      • delete

        public final int delete()
        Description copied from interface: UpdatableRecord
        Deletes this record from the database, based on the value of the primary key or main unique key.

        Optimistic locking

        If a DELETE statement is executed and Settings.isExecuteWithOptimisticLocking() is set to true, then this record will first be compared with the latest state in the database. There are two modes of operation for optimistic locking:

        • With VERSION and/or TIMESTAMP columns configured

          This is the preferred way of using optimistic locking in jOOQ. If this is an UpdatableRecord and if this record returns fields for either Table.getRecordVersion() or Table.getRecordTimestamp(), then these values are compared to the corresponding value in the database in the WHERE clause of the executed DELETE statement.

        • Without any specific column configurations

          In order to compare this record with the latest state, the database record will be locked pessimistically using a SELECT .. FOR UPDATE statement. Not all databases support the FOR UPDATE clause natively. Namely, the following databases will show slightly different behaviour:

          • SQLDialect.CUBRID and SQLDialect.SQLSERVER: jOOQ will try to lock the database record using JDBC's ResultSet.TYPE_SCROLL_SENSITIVE and ResultSet.CONCUR_UPDATABLE.
          • SQLDialect.SQLITE: No pessimistic locking is possible. Client code must assure that no race-conditions can occur between jOOQ's checking of database record state and the actual DELETE

          See SelectQuery.setForUpdate(boolean) for more details

        Statement examples

        The executed statement is

         DELETE FROM [table]
         WHERE [key fields = key values]
         AND [version/timestamp fields = version/timestamp values]

        This is in fact the same as calling delete(getTable().getPrimaryKey().getFieldsArray())

        Specified by:
        delete in interface UpdatableRecord<R extends UpdatableRecord<R>>
        Returns:
        1 if the record was deleted from the database. 0 if deletion was not necessary.
      • refresh

        public final void refresh​(Field<?>... refreshFields)
        Description copied from interface: UpdatableRecord
        Refresh parts of this record from the database.

        A successful refresh results in the following:

        Refreshing can trigger any of the following actions:

        • Executing a new SELECT statement, if this is an UpdatableRecord.
        • Failing, otherwise

        This is the same as calling record.refresh(record.fields())

        Specified by:
        refresh in interface UpdatableRecord<R extends UpdatableRecord<R>>
      • refresh

        public final void refresh​(java.util.Collection<? extends Field<?>> refreshFields)
        Description copied from interface: UpdatableRecord
        Refresh parts of this record from the database.

        A successful refresh results in the following:

        Refreshing can trigger any of the following actions:

        • Executing a new SELECT statement, if this is an UpdatableRecord.
        • Failing, otherwise

        This is the same as calling record.refresh(record.fields())

        Specified by:
        refresh in interface UpdatableRecord<R extends UpdatableRecord<R>>
      • copy

        public final R copy()
        Description copied from interface: UpdatableRecord
        Duplicate this record (in memory) and reset all fields from the primary key or main unique key, such that a subsequent call to UpdatableRecord.store() will result in an INSERT statement.
        Specified by:
        copy in interface UpdatableRecord<R extends UpdatableRecord<R>>
        Returns:
        A new record, distinct from this record.
      • field

        public final <T> Field<T> field​(Field<T> field)
        Description copied from interface: Record
        Get a specific field from this Record.

        This will return:

        • A field that is the same as the argument field (by identity comparison).
        • A field that is equal to the argument field (exact matching fully qualified name).
        • A field that is equal to the argument field (partially matching qualified name).
        • A field whose name is equal to the name of the argument field.
        • null otherwise.
        If several fields have the same name, the first one is returned and a warning is logged.
        Specified by:
        field in interface Record
        See Also:
        Row.field(Field)
      • field

        public final Field<?> field​(java.lang.String name)
        Description copied from interface: Record
        Get a specific field from this Record.
        Specified by:
        field in interface Record
        See Also:
        Row.field(String)
      • field

        public final Field<?> field​(Name name)
        Description copied from interface: Record
        Get a specific qualified field from this Record.
        Specified by:
        field in interface Record
        See Also:
        Row.field(Name)
      • field

        public final Field<?> field​(int index)
        Description copied from interface: Record
        Get a specific field from this Record.
        Specified by:
        field in interface Record
        See Also:
        Row.field(int)
      • fields

        public final Field<?>[] fields()
        Description copied from interface: Record
        Get all fields from this Record.
        Specified by:
        fields in interface Record
        See Also:
        Row.fields()
      • fields

        public final Field<?>[] fields​(Field<?>... f)
        Description copied from interface: Record
        Get all fields from this Record, providing some fields.
        Specified by:
        fields in interface Record
        Returns:
        All available fields
        See Also:
        Row.fields(Field...)
      • fields

        public final Field<?>[] fields​(java.lang.String... fieldNames)
        Description copied from interface: Record
        Get all fields from this Record, providing some field names.
        Specified by:
        fields in interface Record
        Returns:
        All available fields
        See Also:
        Row.fields(String...)
      • fields

        public final Field<?>[] fields​(Name... fieldNames)
        Description copied from interface: Record
        Get all fields from this Record, providing some field names.
        Specified by:
        fields in interface Record
        Returns:
        All available fields
        See Also:
        Row.fields(Name...)
      • fields

        public final Field<?>[] fields​(int... fieldIndexes)
        Description copied from interface: Record
        Get all fields from this Record, providing some field indexes.
        Specified by:
        fields in interface Record
        Returns:
        All available fields
        See Also:
        Row.fields(int...)
      • indexOf

        public final int indexOf​(Field<?> field)
        Description copied from interface: Record
        Get a field's index from this record.
        Specified by:
        indexOf in interface Record
        Parameters:
        field - The field to look for
        Returns:
        The field's index or -1 if the field is not contained in this record.
      • indexOf

        public final int indexOf​(java.lang.String fieldName)
        Description copied from interface: Record
        Get a field's index from this record.
        Specified by:
        indexOf in interface Record
        Parameters:
        fieldName - The field name to look for
        Returns:
        The field's index or -1 if the field is not contained in this record.
      • indexOf

        public final int indexOf​(Name fieldName)
        Description copied from interface: Record
        Get a field's index from this record.
        Specified by:
        indexOf in interface Record
        Parameters:
        fieldName - The field name to look for
        Returns:
        The field's index or -1 if the field is not contained in this record
      • size

        public final int size()
        Description copied from interface: Record
        Get the number of fields of this record.
        Specified by:
        size in interface Record
      • get

        public final <T> T get​(Field<T> field)
        Description copied from interface: Record
        Get a value from this Record, providing a field.

        If this record contains a field with the same Field.getName() as the argument field, that value is retrieved.

        Specified by:
        get in interface Record
        Type Parameters:
        T - The generic field parameter
        Parameters:
        field - The field
        Returns:
        The value of a field contained in this record
      • get

        public final <T> T get​(Field<?> field,
                               java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field.

        If this record contains a field with the same Field.getName() as the argument field, that value is retrieved.

        Specified by:
        get in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        field - The field
        type - The conversion type
        Returns:
        The value of a field contained in this record
        See Also:
        Convert.convert(Object, Class)
      • get

        public final <T,​U> U get​(Field<T> field,
                                       Converter<? super T,​? extends U> converter)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field.

        If this record contains a field with the same Field.getName() as the argument field, that value is retrieved.

        Specified by:
        get in interface Record
        Type Parameters:
        T - The database type parameter
        U - The conversion type parameter
        Parameters:
        field - The field
        converter - The data type converter
        Returns:
        The value of a field contained in this record
        See Also:
        Convert.convert(Object, Converter)
      • get

        public final java.lang.Object get​(int index)
        Description copied from interface: Record
        Get a value from this record, providing a field index.
        Specified by:
        get in interface Record
        Parameters:
        index - The field's index
        Returns:
        The value of a field's index contained in this record
      • get

        public final <T> T get​(int index,
                               java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this record, providing a field index.
        Specified by:
        get in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        index - The field's index
        type - The conversion type
        Returns:
        The value of a field's index contained in this record
        See Also:
        Convert.convert(Object, Class)
      • get

        public final <U> U get​(int index,
                               Converter<?,​? extends U> converter)
        Description copied from interface: Record
        Get a converted value from this record, providing a field index.
        Specified by:
        get in interface Record
        Type Parameters:
        U - The conversion type parameter
        Parameters:
        index - The field's index
        converter - The data type converter
        Returns:
        The value of a field's index contained in this record
        See Also:
        Convert.convert(Object, Converter)
      • get

        public final java.lang.Object get​(java.lang.String fieldName)
        Description copied from interface: Record
        Get a value from this Record, providing a field name.
        Specified by:
        get in interface Record
        Parameters:
        fieldName - The field's name
        Returns:
        The value of a field's name contained in this record
      • get

        public final <T> T get​(java.lang.String fieldName,
                               java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field name.
        Specified by:
        get in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        fieldName - The field's name
        type - The conversion type
        Returns:
        The value of a field's name contained in this record
        See Also:
        Convert.convert(Object, Class)
      • get

        public final <U> U get​(java.lang.String fieldName,
                               Converter<?,​? extends U> converter)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field name.
        Specified by:
        get in interface Record
        Type Parameters:
        U - The conversion type parameter
        Parameters:
        fieldName - The field's name
        converter - The data type converter
        Returns:
        The value of a field's name contained in this record
        See Also:
        Convert.convert(Object, Converter)
      • get

        public final java.lang.Object get​(Name fieldName)
        Description copied from interface: Record
        Get a value from this Record, providing a field name.
        Specified by:
        get in interface Record
        Parameters:
        fieldName - The field's name
        Returns:
        The value of a field's name contained in this record
      • get

        public final <T> T get​(Name fieldName,
                               java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field name.
        Specified by:
        get in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        fieldName - The field's name
        type - The conversion type
        Returns:
        The value of a field's name contained in this record
        See Also:
        Convert.convert(Object, Class)
      • get

        public final <U> U get​(Name fieldName,
                               Converter<?,​? extends U> converter)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field name.
        Specified by:
        get in interface Record
        Type Parameters:
        U - The conversion type parameter
        Parameters:
        fieldName - The field's name
        converter - The data type converter
        Returns:
        The value of a field's name contained in this record
        See Also:
        Convert.convert(Object, Converter)
      • setValue

        @Deprecated
        protected final void setValue​(int index,
                                      java.lang.Object value)
        Deprecated.
        - Use AbstractRecord.set(int, Object) instead
        Subclasses may type-unsafely set a value to a record index. This method takes care of converting the value to the appropriate type.
      • set

        protected final void set​(int index,
                                 java.lang.Object value)
      • set

        public final <T> void set​(Field<T> field,
                                  T value)
        Description copied from interface: Record
        Set a value into this record.

        This will always set the Record.changed(Field) flag for the given field, no matter if setting the value actually changes the value.

        Changing Table.getPrimaryKey() values will set all Record.changed() flags to true, in order to produce complete INSERT statements on subsequent UpdatableRecord.store() operations.

        Specified by:
        set in interface Record
        Type Parameters:
        T - The generic field parameter
        Parameters:
        field - The field
        value - The value
      • set

        public final <T,​U> void set​(Field<T> field,
                                          U value,
                                          Converter<? extends T,​? super U> converter)
        Description copied from interface: Record
        Set a value into this record.

        This will always set the Record.changed(Field) flag for the given field, no matter if setting the value actually changes the value.

        Changing Table.getPrimaryKey() values will set all Record.changed() flags to true, in order to produce complete INSERT statements on subsequent UpdatableRecord.store() operations.

        Specified by:
        set in interface Record
        Type Parameters:
        T - The generic field parameter
        U - The conversion type parameter
        Parameters:
        field - The field
        value - The value
        converter - The converter used to convert value into an appropriate type
      • original

        public final <T> T original​(Field<T> field)
        Description copied from interface: Record
        Get an original value from this record as fetched from the database.

        Record values can be freely modified after having fetched a record from the database. Every record also references the originally fetched values. This method returns such an original value for a field.

        Specified by:
        original in interface Record
        See Also:
        Record.original()
      • original

        public final java.lang.Object original​(int fieldIndex)
        Description copied from interface: Record
        Get an original value from this record as fetched from the database.

        Record values can be freely modified after having fetched a record from the database. Every record also references the originally fetched values. This method returns such an original value for a field.

        Specified by:
        original in interface Record
        See Also:
        Record.original()
      • original

        public final java.lang.Object original​(java.lang.String fieldName)
        Description copied from interface: Record
        Get an original value from this record as fetched from the database.

        Record values can be freely modified after having fetched a record from the database. Every record also references the originally fetched values. This method returns such an original value for a field.

        Specified by:
        original in interface Record
        See Also:
        Record.original()
      • original

        public final java.lang.Object original​(Name fieldName)
        Description copied from interface: Record
        Get an original value from this record as fetched from the database.

        Record values can be freely modified after having fetched a record from the database. Every record also references the originally fetched values. This method returns such an original value for a field.

        Specified by:
        original in interface Record
        See Also:
        Record.original()
      • changed

        public final boolean changed​(int fieldIndex)
        Description copied from interface: Record
        Check if a field's value has been changed from its original as fetched from the database.
        Specified by:
        changed in interface Record
        See Also:
        Record.changed(), Record.original(int)
      • changed

        public final boolean changed​(java.lang.String fieldName)
        Description copied from interface: Record
        Check if a field's value has been changed from its original as fetched from the database.
        Specified by:
        changed in interface Record
        See Also:
        Record.changed(), Record.original(String)
      • changed

        public final void changed​(int fieldIndex,
                                  boolean c)
        Description copied from interface: Record
        Set this record's internal changed flag to the supplied value for a given field.

        If the changed argument is false, the Record.original(int) value will be reset to the corresponding "current" value as well

        Specified by:
        changed in interface Record
        See Also:
        Record.changed(), Record.changed(int)
      • changed

        public final void changed​(java.lang.String fieldName,
                                  boolean c)
        Description copied from interface: Record
        Set this record's internal changed flag to the supplied value for a given field.

        If the changed argument is false, the Record.original(String) value will be reset to the corresponding "current" value as well

        Specified by:
        changed in interface Record
        See Also:
        Record.changed(), Record.changed(String)
      • changed

        public final void changed​(Name fieldName,
                                  boolean c)
        Description copied from interface: Record
        Set this record's internal changed flag to the supplied value for a given field.

        If the changed argument is false, the Record.original(Name) value will be reset to the corresponding "current" value as well

        Specified by:
        changed in interface Record
        See Also:
        Record.changed(), Record.changed(Name)
      • intoArray

        public final java.lang.Object[] intoArray()
        Description copied from interface: Record
        Convert this record into an array.

        The resulting array has the same number of elements as this record has fields. The resulting array contains data as such:

         // For arbitrary values of i
         record.getValue(i) == record.intoArray()[i]
         

        This is the same as calling into(Object[].class)

        Specified by:
        intoArray in interface Record
        Returns:
        This record as an array
        See Also:
        Record.fromArray(Object...)
      • intoList

        public final java.util.List<java.lang.Object> intoList()
        Description copied from interface: Record
        Convert this record into a list.

        The resulting list has the same number of elements as this record has fields. The resulting array contains data as such:

         // For arbitrary values of i
         record.getValue(i) == record.intoList().get(i)
         

        This is the same as calling Arrays.asList(intoArray())

        Specified by:
        intoList in interface Record
      • intoStream

        public final java.util.stream.Stream<java.lang.Object> intoStream()
        Description copied from interface: Record
        Convert this record into a stream.

        The resulting stream has the same number of elements as this record has fields. The resulting stream contains data as such:

        This is the same as calling into(Stream.class)

        Specified by:
        intoStream in interface Record
        Returns:
        This record as a stream
      • intoMap

        public final java.util.Map<java.lang.String,​java.lang.Object> intoMap()
        Description copied from interface: Record
        Return this record as a name/value map.

        This is the inverse operation to Record.fromMap(Map)

        Specified by:
        intoMap in interface Record
        Returns:
        This record as a map
        See Also:
        Record.fromMap(Map)
      • into

        public final Record into​(Field<?>... f)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Parameters:
        f - The fields of the new record
        Returns:
        The new record
      • into

        public final <T1> Record1<T1> into​(Field<T1> field1)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2> Record2<T1,​T2> into​(Field<T1> field1,
                                                             Field<T2> field2)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3> Record3<T1,​T2,​T3> into​(Field<T1> field1,
                                                                               Field<T2> field2,
                                                                               Field<T3> field3)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4> Record4<T1,​T2,​T3,​T4> into​(Field<T1> field1,
                                                                                                 Field<T2> field2,
                                                                                                 Field<T3> field3,
                                                                                                 Field<T4> field4)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5> Record5<T1,​T2,​T3,​T4,​T5> into​(Field<T1> field1,
                                                                                                                   Field<T2> field2,
                                                                                                                   Field<T3> field3,
                                                                                                                   Field<T4> field4,
                                                                                                                   Field<T5> field5)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6> Record6<T1,​T2,​T3,​T4,​T5,​T6> into​(Field<T1> field1,
                                                                                                                                     Field<T2> field2,
                                                                                                                                     Field<T3> field3,
                                                                                                                                     Field<T4> field4,
                                                                                                                                     Field<T5> field5,
                                                                                                                                     Field<T6> field6)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7> Record7<T1,​T2,​T3,​T4,​T5,​T6,​T7> into​(Field<T1> field1,
                                                                                                                                                       Field<T2> field2,
                                                                                                                                                       Field<T3> field3,
                                                                                                                                                       Field<T4> field4,
                                                                                                                                                       Field<T5> field5,
                                                                                                                                                       Field<T6> field6,
                                                                                                                                                       Field<T7> field7)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8> Record8<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8> into​(Field<T1> field1,
                                                                                                                                                                         Field<T2> field2,
                                                                                                                                                                         Field<T3> field3,
                                                                                                                                                                         Field<T4> field4,
                                                                                                                                                                         Field<T5> field5,
                                                                                                                                                                         Field<T6> field6,
                                                                                                                                                                         Field<T7> field7,
                                                                                                                                                                         Field<T8> field8)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9> Record9<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9> into​(Field<T1> field1,
                                                                                                                                                                                           Field<T2> field2,
                                                                                                                                                                                           Field<T3> field3,
                                                                                                                                                                                           Field<T4> field4,
                                                                                                                                                                                           Field<T5> field5,
                                                                                                                                                                                           Field<T6> field6,
                                                                                                                                                                                           Field<T7> field7,
                                                                                                                                                                                           Field<T8> field8,
                                                                                                                                                                                           Field<T9> field9)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10> Record10<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10> into​(Field<T1> field1,
                                                                                                                                                                                                                Field<T2> field2,
                                                                                                                                                                                                                Field<T3> field3,
                                                                                                                                                                                                                Field<T4> field4,
                                                                                                                                                                                                                Field<T5> field5,
                                                                                                                                                                                                                Field<T6> field6,
                                                                                                                                                                                                                Field<T7> field7,
                                                                                                                                                                                                                Field<T8> field8,
                                                                                                                                                                                                                Field<T9> field9,
                                                                                                                                                                                                                Field<T10> field10)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11> Record11<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11> into​(Field<T1> field1,
                                                                                                                                                                                                                                    Field<T2> field2,
                                                                                                                                                                                                                                    Field<T3> field3,
                                                                                                                                                                                                                                    Field<T4> field4,
                                                                                                                                                                                                                                    Field<T5> field5,
                                                                                                                                                                                                                                    Field<T6> field6,
                                                                                                                                                                                                                                    Field<T7> field7,
                                                                                                                                                                                                                                    Field<T8> field8,
                                                                                                                                                                                                                                    Field<T9> field9,
                                                                                                                                                                                                                                    Field<T10> field10,
                                                                                                                                                                                                                                    Field<T11> field11)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12> Record12<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12> into​(Field<T1> field1,
                                                                                                                                                                                                                                                        Field<T2> field2,
                                                                                                                                                                                                                                                        Field<T3> field3,
                                                                                                                                                                                                                                                        Field<T4> field4,
                                                                                                                                                                                                                                                        Field<T5> field5,
                                                                                                                                                                                                                                                        Field<T6> field6,
                                                                                                                                                                                                                                                        Field<T7> field7,
                                                                                                                                                                                                                                                        Field<T8> field8,
                                                                                                                                                                                                                                                        Field<T9> field9,
                                                                                                                                                                                                                                                        Field<T10> field10,
                                                                                                                                                                                                                                                        Field<T11> field11,
                                                                                                                                                                                                                                                        Field<T12> field12)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13> Record13<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                            Field<T2> field2,
                                                                                                                                                                                                                                                                            Field<T3> field3,
                                                                                                                                                                                                                                                                            Field<T4> field4,
                                                                                                                                                                                                                                                                            Field<T5> field5,
                                                                                                                                                                                                                                                                            Field<T6> field6,
                                                                                                                                                                                                                                                                            Field<T7> field7,
                                                                                                                                                                                                                                                                            Field<T8> field8,
                                                                                                                                                                                                                                                                            Field<T9> field9,
                                                                                                                                                                                                                                                                            Field<T10> field10,
                                                                                                                                                                                                                                                                            Field<T11> field11,
                                                                                                                                                                                                                                                                            Field<T12> field12,
                                                                                                                                                                                                                                                                            Field<T13> field13)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14> Record14<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                Field<T2> field2,
                                                                                                                                                                                                                                                                                                Field<T3> field3,
                                                                                                                                                                                                                                                                                                Field<T4> field4,
                                                                                                                                                                                                                                                                                                Field<T5> field5,
                                                                                                                                                                                                                                                                                                Field<T6> field6,
                                                                                                                                                                                                                                                                                                Field<T7> field7,
                                                                                                                                                                                                                                                                                                Field<T8> field8,
                                                                                                                                                                                                                                                                                                Field<T9> field9,
                                                                                                                                                                                                                                                                                                Field<T10> field10,
                                                                                                                                                                                                                                                                                                Field<T11> field11,
                                                                                                                                                                                                                                                                                                Field<T12> field12,
                                                                                                                                                                                                                                                                                                Field<T13> field13,
                                                                                                                                                                                                                                                                                                Field<T14> field14)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15> Record15<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                    Field<T2> field2,
                                                                                                                                                                                                                                                                                                                    Field<T3> field3,
                                                                                                                                                                                                                                                                                                                    Field<T4> field4,
                                                                                                                                                                                                                                                                                                                    Field<T5> field5,
                                                                                                                                                                                                                                                                                                                    Field<T6> field6,
                                                                                                                                                                                                                                                                                                                    Field<T7> field7,
                                                                                                                                                                                                                                                                                                                    Field<T8> field8,
                                                                                                                                                                                                                                                                                                                    Field<T9> field9,
                                                                                                                                                                                                                                                                                                                    Field<T10> field10,
                                                                                                                                                                                                                                                                                                                    Field<T11> field11,
                                                                                                                                                                                                                                                                                                                    Field<T12> field12,
                                                                                                                                                                                                                                                                                                                    Field<T13> field13,
                                                                                                                                                                                                                                                                                                                    Field<T14> field14,
                                                                                                                                                                                                                                                                                                                    Field<T15> field15)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16> Record16<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                        Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                        Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                        Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                        Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                        Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                        Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                        Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                        Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                        Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                        Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                        Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                        Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                        Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                        Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                        Field<T16> field16)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17> Record17<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                                            Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                                            Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                                            Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                                            Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                                            Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                                            Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                                            Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                                            Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                                            Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                                            Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                                            Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                                            Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                                            Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                                            Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                                            Field<T16> field16,
                                                                                                                                                                                                                                                                                                                                                            Field<T17> field17)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18> Record18<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                                                                Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                                                                Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                                                                Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                                                                Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                                                                Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                                                                Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                                                                Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                                                                Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                                                                Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                                                                Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                                                                Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                                                                Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                                                                Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                                                                Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                                                                Field<T16> field16,
                                                                                                                                                                                                                                                                                                                                                                                Field<T17> field17,
                                                                                                                                                                                                                                                                                                                                                                                Field<T18> field18)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19> Record19<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T16> field16,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T17> field17,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T18> field18,
                                                                                                                                                                                                                                                                                                                                                                                                    Field<T19> field19)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20> Record20<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T16> field16,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T17> field17,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T18> field18,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T19> field19,
                                                                                                                                                                                                                                                                                                                                                                                                                        Field<T20> field20)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21> Record21<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T16> field16,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T17> field17,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T18> field18,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T19> field19,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T20> field20,
                                                                                                                                                                                                                                                                                                                                                                                                                                            Field<T21> field21)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21,​T22> Record22<T1,​T2,​T3,​T4,​T5,​T6,​T7,​T8,​T9,​T10,​T11,​T12,​T13,​T14,​T15,​T16,​T17,​T18,​T19,​T20,​T21,​T22> into​(Field<T1> field1,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T2> field2,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T3> field3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T4> field4,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T5> field5,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T6> field6,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T7> field7,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T8> field8,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T9> field9,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T10> field10,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T11> field11,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T12> field12,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T13> field13,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T14> field14,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T15> field15,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T16> field16,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T17> field17,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T18> field18,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T19> field19,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T20> field20,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T21> field21,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                Field<T22> field22)
        Description copied from interface: Record
        Copy this record into a new record holding only a subset of the previous fields.
        Specified by:
        into in interface Record
        Returns:
        The new record
        See Also:
        Record.into(Table)
      • into

        public final <E> E into​(E object)
        Description copied from interface: Record
        Map resulting records onto a custom type.

        This is the same as Record.into(Class), except that no new object is instantiated as a result. Instead, you can provide your own custom POJO instance.

        Specified by:
        into in interface Record
        Type Parameters:
        E - The generic entity type.
        Parameters:
        object - The receiving bean.
        See Also:
        Record.from(Object)
      • into

        public final <R extends Record> R into​(Table<R> table)
        Description copied from interface: Record
        Map resulting records onto a custom record type.

        The mapping algorithm is this:

        jOOQ will map Record values by equal field names:

        • For every field in the table argument with Field.getName() "MY_field" (case-sensitive!), a corresponding field with the same name in this record will be searched.
        • If several fields in this record share the same Field.getName(), then the first one returning true on Field.equals(Object) will be returned. (e.g. qualified field names match)

        Other restrictions

        • Table.getRecordType() must return a class of type TableRecord, which must provide a default constructor. Non-public default constructors are made accessible using Constructor.setAccessible(boolean)
        Specified by:
        into in interface Record
        Type Parameters:
        R - The generic table record type.
        Parameters:
        table - The table type.
      • intoResultSet

        public final java.sql.ResultSet intoResultSet()
        Description copied from interface: Record
        Generate an in-memory JDBC ResultSet containing the data of this Record.

        Use this as an adapter for JDBC-compliant code that expects a ResultSet to operate on, rather than a jOOQ Result. The returned ResultSet allows for the following behaviour according to the JDBC specification:

        • ResultSet.CLOSE_CURSORS_AT_COMMIT: The cursors (i.e. Statement object) are no longer available
        • ResultSet.CONCUR_READ_ONLY: You cannot update the database through this ResultSet, as the underlying Result object does not hold any open database refences anymore
        • ResultSet.FETCH_FORWARD: The fetch direction is forward only, and cannot be changed
        • ResultSet.TYPE_SCROLL_INSENSITIVE: You can use any of the ResultSet's scrolling methods, e.g. ResultSet.next() or ResultSet.previous(), etc.

        You may use DSLContext.fetch(ResultSet) to unwind this wrapper again.

        This is the same as creating a new Result with this Record only, and then calling Result.intoResultSet() on that Result

        Specified by:
        intoResultSet in interface Record
        Returns:
        A wrapper JDBC ResultSet
      • map

        public final <E> E map​(RecordMapper<Record,​E> mapper)
        Description copied from interface: Record
        Map this record into a custom mapper callback.
        Specified by:
        map in interface Record
        Parameters:
        mapper - The mapper callback
        Returns:
        The custom mapped record
      • from

        public final void from​(java.lang.Object source)
        Description copied from interface: Record
        Load data into this record from a source.

        The mapping algorithm is this:

        If source is an array

        Loading of data is delegated to Record.fromArray(Object...)

        If source is a Map

        Loading of data is delegated to Record.fromMap(Map)

        If source is an Iterable

        Loading of data is equivalent to loading Record.fromArray(Object...), transforming the Iterable to an array, first.

        If any JPA Column annotations are found on the Class of the provided source, only those are used. Matching candidates are:

        • Public no-argument instance methods annotated with Column
        • Public no-argument instance methods starting with getXXX or isXXX, if there exists a matching public single-argument setXXX() instance method that is annotated with Column
        • Public instance member fields annotated with Column
        Additional matching rules:
        • Column.name() must match Field.getName(). All other annotation attributes are ignored
        • Only the first match per field is used
        • Matching methods have a higher priority than matching member fields
        • Explicitly matching methods have a higher priority than implicitly matching methods (implicitly matching getter = setter is annotated)
        • Static methods / member fields are ignored

        If there are no JPA Column annotations, or jOOQ can't find the javax.persistence API on the classpath, jOOQ will map members by naming convention:

        If Field.getName() is MY_field (case-sensitive!), then this field's value will be fetched from the first of these:

        • Public no-argument instance method MY_field()
        • Public no-argument instance method myField()
        • Public no-argument instance method getMY_field()
        • Public no-argument instance method getMyField()
        • Public instance member field MY_field
        • Public instance member field myField

        Other restrictions

        • primitive types are supported.

        General notes

        The resulting record will have its internal "changed" flags set to true for all values. This means that UpdatableRecord.store() will perform an INSERT statement. If you wish to store the record using an UPDATE statement, use DSLContext.executeUpdate(UpdatableRecord) instead.

        This is the same as calling record.from(source, record.fields())

        Specified by:
        from in interface Record
        Parameters:
        source - The source object to copy data from
        See Also:
        Record.into(Class), Record.from(Object, Field...)
      • from

        public final void from​(java.lang.Object source,
                               Field<?>... f)
        Description copied from interface: Record
        Load data into this record from a source, providing some fields.

        This is the same as Record.from(Object), except that only fields contained in the fields argument will be mapped.

        Specified by:
        from in interface Record
        Parameters:
        source - The source object to copy data from
        f - The record's fields to use for mapping
        See Also:
        Record.into(Class), Record.from(Object)
      • from

        public final void from​(java.lang.Object source,
                               java.lang.String... fieldNames)
        Description copied from interface: Record
        Load data into this record from a source, providing some field names.

        This is the same as Record.from(Object), except that only fields contained in the fieldNames argument will be mapped.

        Specified by:
        from in interface Record
        Parameters:
        source - The source object to copy data from
        fieldNames - The record's fields names to use for mapping
        See Also:
        Record.into(Class), Record.from(Object)
      • from

        public final void from​(java.lang.Object source,
                               Name... fieldNames)
        Description copied from interface: Record
        Load data into this record from a source, providing some field names.

        This is the same as Record.from(Object), except that only fields contained in the fieldNames argument will be mapped.

        Specified by:
        from in interface Record
        Parameters:
        source - The source object to copy data from
        fieldNames - The record's fields names to use for mapping
        See Also:
        Record.into(Class), Record.from(Object)
      • from

        public final void from​(java.lang.Object source,
                               int... fieldIndexes)
        Description copied from interface: Record
        Load data into this record from a source, providing some field indexes.

        This is the same as Record.from(Object), except that only fields contained in the fieldIndexes argument will be mapped.

        Specified by:
        from in interface Record
        Parameters:
        source - The source object to copy data from
        fieldIndexes - The record's fields indexes to use for mapping
        See Also:
        Record.into(Class), Record.from(Object)
      • fromMap

        public final void fromMap​(java.util.Map<java.lang.String,​?> map)
        Description copied from interface: Record
        Load data from a map into this record.

        The argument map is expected to hold field-name / value pairs where field-names correspond to actual field names as provided by Record.field(String). Missing fields will be left untouched. Excess fields will be ignored.

        This is the inverse operation to Record.intoMap(). This is the same as calling record.fromMap(map, record.fields())

        Specified by:
        fromMap in interface Record
        See Also:
        Record.intoMap(), Record.fromMap(Map, Field...)
      • fromMap

        public final void fromMap​(java.util.Map<java.lang.String,​?> map,
                                  Field<?>... f)
        Description copied from interface: Record
        Load data from a map into this record, providing some fields.

        The argument map is expected to hold field-name / value pairs where field-names correspond to actual field names as provided by Record.field(String). Missing fields will be left untouched. Excess fields will be ignored.

        This is the same as Record.fromMap(Map), except that only fields contained in the fields argument will be mapped.

        Specified by:
        fromMap in interface Record
        See Also:
        Record.intoMap(), Record.fromMap(Map)
      • fromMap

        public final void fromMap​(java.util.Map<java.lang.String,​?> map,
                                  java.lang.String... fieldNames)
        Description copied from interface: Record
        Load data from a map into this record, providing some field names.

        The argument map is expected to hold field-name / value pairs where field-names correspond to actual field names as provided by Record.field(String). Missing fields will be left untouched. Excess fields will be ignored.

        This is the same as Record.fromMap(Map), except that only fields contained in the fieldNames argument will be mapped.

        Specified by:
        fromMap in interface Record
        See Also:
        Record.intoMap(), Record.fromMap(Map)
      • fromMap

        public final void fromMap​(java.util.Map<java.lang.String,​?> map,
                                  Name... fieldNames)
        Description copied from interface: Record
        Load data from a map into this record, providing some field names.

        The argument map is expected to hold field-name / value pairs where field-names correspond to actual field names as provided by Record.field(Name). Missing fields will be left untouched. Excess fields will be ignored.

        This is the same as Record.fromMap(Map), except that only fields contained in the fieldNames argument will be mapped.

        Specified by:
        fromMap in interface Record
        See Also:
        Record.intoMap(), Record.fromMap(Map)
      • fromMap

        public final void fromMap​(java.util.Map<java.lang.String,​?> map,
                                  int... fieldIndexes)
        Description copied from interface: Record
        Load data from a map into this record, providing some field indexes.

        The argument map is expected to hold field-name / value pairs where field-names correspond to actual field names as provided by Record.field(String). Missing fields will be left untouched. Excess fields will be ignored.

        This is the same as Record.fromMap(Map), except that only fields contained in the fieldIndexes argument will be mapped.

        Specified by:
        fromMap in interface Record
        See Also:
        Record.intoMap(), Record.fromMap(Map)
      • fromArray

        public final void fromArray​(java.lang.Object... array)
        Description copied from interface: Record
        Load data from an array into this record.

        The argument array is expected to hold values for this record's field indexes. Missing values will be left untouched. Excess values will be ignored.

        This is the inverse operation to Record.intoArray()

        Specified by:
        fromArray in interface Record
        See Also:
        Record.intoArray(), Record.fromArray(Object[], Field...)
      • fromArray

        public final void fromArray​(java.lang.Object[] array,
                                    Field<?>... f)
        Description copied from interface: Record
        Load data from an array into this record, providing some fields.

        The argument array is expected to hold values for this record's field indexes. Missing values will be left untouched. Excess values will be ignored.

        This is the same as Record.fromArray(Object...), except that only fields contained in the fields argument will be mapped.

        Specified by:
        fromArray in interface Record
        See Also:
        Record.intoArray(), Record.fromArray(Object...)
      • fromArray

        public final void fromArray​(java.lang.Object[] array,
                                    java.lang.String... fieldNames)
        Description copied from interface: Record
        Load data from an array into this record, providing some fields names.

        The argument array is expected to hold values for this record's field indexes. Missing values will be left untouched. Excess values will be ignored.

        This is the same as Record.fromArray(Object...), except that only fields contained in the fieldNames argument will be mapped.

        Specified by:
        fromArray in interface Record
        See Also:
        Record.intoArray(), Record.fromArray(Object...)
      • fromArray

        public final void fromArray​(java.lang.Object[] array,
                                    Name... fieldNames)
        Description copied from interface: Record
        Load data from an array into this record, providing some fields names.

        The argument array is expected to hold values for this record's field indexes. Missing values will be left untouched. Excess values will be ignored.

        This is the same as Record.fromArray(Object...), except that only fields contained in the fieldNames argument will be mapped.

        Specified by:
        fromArray in interface Record
        See Also:
        Record.intoArray(), Record.fromArray(Object...)
      • fromArray

        public final void fromArray​(java.lang.Object[] array,
                                    int... fieldIndexes)
        Description copied from interface: Record
        Load data from an array into this record, providing some fields indexes.

        The argument array is expected to hold values for this record's field indexes. Missing values will be left untouched. Excess values will be ignored.

        This is the same as Record.fromArray(Object...), except that only fields contained in the fieldIndexes argument will be mapped.

        Specified by:
        fromArray in interface Record
        See Also:
        Record.intoArray(), Record.fromArray(Object...)
      • from

        protected final void from​(Record source)
        This method was implemented with [#799]. It may be useful to make it public for broader use...?
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • compareTo

        public int compareTo​(Record that)
        Description copied from interface: Record
        Compares this Record with another Record according to their natural ordering.

        jOOQ Records implement Comparable to allow for naturally ordering Records in a "SQL way", i.e. according to the following rules:

        Records being compared must have the same ROW type

        Two Records are comparable if and only if they have the same ROW type, i.e. if their fieldsRow() methods return fields of the same type and degree.

        Comparison rules

        Assume the following notations:

        • X[i] means X.getValue(i)
        • X = Y means X.compareTo(Y) == 0
        • X < Y means X.compareTo(Y) < 0
        • X[i] = Y[i] means (X[i] == null && Y[i] == null) || X[i].compareTo(Y[i]) == 0
        • X[i] < Y[i] means Y[i] == null || X[i].compareTo(Y[i]) < 0. This corresponds to the SQL NULLS LAST clause.
        Then, for two comparable Records r1 and r2, x = r1.compareTo(r2) yields:
        • x = -1: if
              (r1[0] < r2[0])
           OR (r1[0] = r2[0] AND r1[1] < r2[1])
           OR  ...
           OR (r1[0] = r2[0] AND ... AND r1[N-1] = r2[N-1] AND r1[N] < r2[N])
        • x = 0: if
           OR (r1[0] = r2[0] AND ... AND r1[N-1] = r2[N-1] AND r1[N] = r2[N])
        • x = 1: if
              (r1[0] > r2[0])
           OR (r1[0] = r2[0] AND r1[1] > r2[1])
           OR  ...
           OR (r1[0] = r2[0] AND ... AND r1[N-1] = r2[N-1] AND r1[N] > r2[N])

        Note, that the above rules correspond to the SQL ordering behaviour as illustrated in the following examples:

         -- A SQL ORDER BY clause, ordering all records by columns in their order
         SELECT a, b, c
         FROM my_table
         ORDER BY 1, 2, 3
        
         -- A row value expression comparison predicate
         SELECT *
         FROM my_table
         WHERE (a, b, c) < (1, 2, 3)
         

        See Row1.lessThan(Row1), Row2.lessThan(Row2), ..., Row22.lessThan(Row22) for more details about row value expression comparison predicates

        Alternative sorting behaviour can be achieved through Result.sortAsc(java.util.Comparator) and similar methods.

        Specified by:
        compareTo in interface java.lang.Comparable<Record>
        Specified by:
        compareTo in interface Record
      • getValue

        public final <T> T getValue​(Field<T> field)
        Description copied from interface: Record
        Get a value from this Record, providing a field.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(Field) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(Field)
      • getValue

        @Deprecated
        public final <T> T getValue​(Field<T> field,
                                    T defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a value from this record, providing a field.
        Specified by:
        getValue in interface Record
        Type Parameters:
        T - The generic field parameter
        Parameters:
        field - The field
        defaultValue - The default value instead of null
        Returns:
        The value of a field contained in this record, or defaultValue, if null
      • getValue

        public final <T> T getValue​(Field<?> field,
                                    java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field.

        [#2211] Future versions of jOOQ might remove tthis method. It is recommended to use Record.get(Field, Class) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(Field, Class)
      • getValue

        @Deprecated
        public final <T> T getValue​(Field<?> field,
                                    java.lang.Class<? extends T> type,
                                    T defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a converted value from this record, providing a field.
        Specified by:
        getValue in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        field - The field
        type - The conversion type
        defaultValue - The default value instead of null
        Returns:
        The value of a field contained in this record, or defaultValue, if null
        See Also:
        Convert.convert(Object, Class)
      • getValue

        @Deprecated
        public final <T,​U> U getValue​(Field<T> field,
                                            Converter<? super T,​? extends U> converter,
                                            U defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a converted value from this record, providing a field.
        Specified by:
        getValue in interface Record
        Type Parameters:
        T - The database type parameter
        U - The conversion type parameter
        Parameters:
        field - The field
        converter - The data type converter
        defaultValue - The default value instead of null
        Returns:
        The value of a field contained in this record, or defaultValue, if null
        See Also:
        Convert.convert(Object, Converter)
      • getValue

        public final java.lang.Object getValue​(int index)
        Description copied from interface: Record
        Get a value from this record, providing a field index.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(int) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(int)
      • getValue

        @Deprecated
        public final java.lang.Object getValue​(int index,
                                               java.lang.Object defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a value from this record, providing a field index.
        Specified by:
        getValue in interface Record
        Parameters:
        index - The field's index
        defaultValue - The default value instead of null
        Returns:
        The value of a field's index contained in this record, or defaultValue, if null
      • getValue

        public final <T> T getValue​(int index,
                                    java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this record, providing a field index.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(int, Class) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(int, Class)
      • getValue

        @Deprecated
        public final <T> T getValue​(int index,
                                    java.lang.Class<? extends T> type,
                                    T defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a converted value from this record, providing a field index.
        Specified by:
        getValue in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        index - The field's index
        type - The conversion type
        defaultValue - The default value instead of null
        Returns:
        The value of a field's index contained in this record, or defaultValue, if null
        See Also:
        Convert.convert(Object, Class)
      • getValue

        public final <U> U getValue​(int index,
                                    Converter<?,​? extends U> converter)
        Description copied from interface: Record
        Get a converted value from this record, providing a field index.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(int, Converter) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(int, Converter)
      • getValue

        @Deprecated
        public final <U> U getValue​(int index,
                                    Converter<?,​? extends U> converter,
                                    U defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a converted value from this record, providing a field index.
        Specified by:
        getValue in interface Record
        Type Parameters:
        U - The conversion type parameter
        Parameters:
        index - The field's index
        converter - The data type converter
        defaultValue - The default value instead of null
        Returns:
        The value of a field's index contained in this record, or defaultValue, if null
        See Also:
        Convert.convert(Object, Converter)
      • getValue

        public final java.lang.Object getValue​(java.lang.String fieldName)
        Description copied from interface: Record
        Get a value from this Record, providing a field name.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(String) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(String)
      • getValue

        @Deprecated
        public final java.lang.Object getValue​(java.lang.String fieldName,
                                               java.lang.Object defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a value from this record, providing a field name.
        Specified by:
        getValue in interface Record
        Parameters:
        fieldName - The field's name
        defaultValue - The default value instead of null
        Returns:
        The value of a field's name contained in this record, or defaultValue, if null
      • getValue

        public final <T> T getValue​(java.lang.String fieldName,
                                    java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field name.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(String, Class) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(String, Class)
      • getValue

        @Deprecated
        public final <T> T getValue​(java.lang.String fieldName,
                                    java.lang.Class<? extends T> type,
                                    T defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a converted value from this record, providing a field name.
        Specified by:
        getValue in interface Record
        Type Parameters:
        T - The conversion type parameter
        Parameters:
        fieldName - The field's name
        type - The conversion type
        defaultValue - The default value instead of null
        Returns:
        The value of a field's name contained in this record, or defaultValue, if null
        See Also:
        Convert.convert(Object, Class)
      • getValue

        @Deprecated
        public final <U> U getValue​(java.lang.String fieldName,
                                    Converter<?,​? extends U> converter,
                                    U defaultValue)
        Deprecated.
        Description copied from interface: Record
        Get a converted value from this record, providing a field name.
        Specified by:
        getValue in interface Record
        Type Parameters:
        U - The conversion type parameter
        Parameters:
        fieldName - The field's name
        converter - The data type converter
        defaultValue - The default value instead of null
        Returns:
        The value of a field's name contained in this record, or defaultValue, if null
        See Also:
        Convert.convert(Object, Converter)
      • getValue

        public final java.lang.Object getValue​(Name fieldName)
        Description copied from interface: Record
        Get a value from this Record, providing a field name.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(Name) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(Name)
      • getValue

        public final <T> T getValue​(Name fieldName,
                                    java.lang.Class<? extends T> type)
        Description copied from interface: Record
        Get a converted value from this Record, providing a field name.

        [#2211] Future versions of jOOQ might remove this method. It is recommended to use Record.get(Name, Class) instead.

        Specified by:
        getValue in interface Record
        See Also:
        Record.get(Name, Class)
      • attach

        public final void attach​(Configuration c)
        Description copied from interface: Attachable
        Attach this object to a new Configuration.
        Specified by:
        attach in interface Attachable
        Parameters:
        c - A configuration or null, if you wish to detach this Attachable from its previous configuration.
      • detach

        public final void detach()
        Description copied from interface: Attachable
        Detach this object from its current Configuration.

        This is the same as calling attach(null).

        Specified by:
        detach in interface Attachable
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • format

        public final java.lang.String format()
        Description copied from interface: Formattable
        Get a simple formatted representation of this result.

        This is the same as calling Formattable.format(int) with maxRows = Integer.MAX_VALUE

        Specified by:
        format in interface Formattable
        Returns:
        The formatted result
      • format

        public final java.lang.String format​(int maxRecords)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result.
        Specified by:
        format in interface Formattable
        Parameters:
        maxRecords - The maximum number of records to include in the formatted result
        Returns:
        The formatted result
      • format

        public final java.lang.String format​(TXTFormat format)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result.
        Specified by:
        format in interface Formattable
        Parameters:
        format - The formatting information
        Returns:
        The formatted result
      • format

        public final void format​(java.io.OutputStream stream,
                                 int maxRecords)
        Description copied from interface: Formattable
        Like Formattable.format(int), but the data is output onto an OutputStream.
        Specified by:
        format in interface Formattable
      • formatCSV

        public final java.lang.String formatCSV()
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.

        This is the same as calling formatCSV(true, ',', "")

        Specified by:
        formatCSV in interface Formattable
        Returns:
        The formatted result
      • formatCSV

        public final java.lang.String formatCSV​(boolean header)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.

        This is the same as calling formatCSV(',', "")

        Specified by:
        formatCSV in interface Formattable
        Parameters:
        header - Whether to emit a CSV header line
        Returns:
        The formatted result
      • formatCSV

        public final java.lang.String formatCSV​(char delimiter)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.

        This is the same as calling formatCSV(true, delimiter, "")

        Specified by:
        formatCSV in interface Formattable
        Parameters:
        delimiter - The delimiter to use between records
        Returns:
        The formatted result
      • formatCSV

        public final java.lang.String formatCSV​(boolean header,
                                                char delimiter)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.

        This is the same as calling formatCSV(delimiter, "")

        Specified by:
        formatCSV in interface Formattable
        Parameters:
        header - Whether to emit a CSV header line
        delimiter - The delimiter to use between records
        Returns:
        The formatted result
      • formatCSV

        public final java.lang.String formatCSV​(char delimiter,
                                                java.lang.String nullString)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.

        This is the same as calling formatCSV(true, delimiter, nullString)

        Specified by:
        formatCSV in interface Formattable
        Parameters:
        delimiter - The delimiter to use between records
        nullString - A special string for encoding NULL values.
        Returns:
        The formatted result
      • formatCSV

        public final java.lang.String formatCSV​(boolean header,
                                                char delimiter,
                                                java.lang.String nullString)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.
        Specified by:
        formatCSV in interface Formattable
        Parameters:
        header - Whether to emit a CSV header line
        delimiter - The delimiter to use between records
        nullString - A special string for encoding NULL values.
        Returns:
        The formatted result
      • formatCSV

        public final java.lang.String formatCSV​(CSVFormat format)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as CSV.
        Specified by:
        formatCSV in interface Formattable
        Returns:
        The formatted result
      • formatJSON

        public final java.lang.String formatJSON()
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as a JSON array of array.

        The format is the following:

         {"fields":[{"name":"field-1","type":"type-1"},
                    {"name":"field-2","type":"type-2"},
                    ...,
                    {"name":"field-n","type":"type-n"}],
          "records":[[value-1-1,value-1-2,...,value-1-n],
                     [value-2-1,value-2-2,...,value-2-n]]}
         
        Specified by:
        formatJSON in interface Formattable
        Returns:
        The formatted result
      • formatJSON

        public final java.lang.String formatJSON​(JSONFormat format)
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as a JSON data structure, according to the format.
        Specified by:
        formatJSON in interface Formattable
        Returns:
        The formatted result
        See Also:
        JSONFormat
      • formatChart

        public final java.lang.String formatChart()
        Specified by:
        formatChart in interface Formattable
      • formatInsert

        public final java.lang.String formatInsert()
        Description copied from interface: Formattable
        Get this result as a set of INSERT statements.

        This uses the the first record's TableRecord.getTable(), if the first record is a TableRecord. Otherwise, this generates INSERT statements into an "UNKNOWN_TABLE". In both cases, the Result.fields() are used for column names.

        Specified by:
        formatInsert in interface Formattable
      • formatInsert

        public final java.lang.String formatInsert​(Table<?> table,
                                                   Field<?>... f)
        Description copied from interface: Formattable
        Get this result as a set of INSERT statements.

        This explicitly specifies the table (and optionally the fields) to insert into. If the fields argument is left empty, the Result.fields() are used, instead.

        Specified by:
        formatInsert in interface Formattable
      • formatHTML

        public final java.lang.String formatHTML()
        Description copied from interface: Formattable
        Get a simple formatted representation of this result as HTML.

        The HTML code is formatted as follows:

         <table>
           <thead>
             <tr>
               <th>field-1</th>
               <th>field-2</th>
               ...
               <th>field-n</th>
             </tr>
           </thead>
           <tbody>
             <tr>
               <th>value-1-1</th>
               <th>value-1-2</th>
               ...
               <th>value-1-n</th>
             </tr>
             <tr>
               <th>value-2-1</th>
               <th>value-2-2</th>
               ...
               <th>value-2-n</th>
             </tr>
             ...
           </tbody>
         </table>
         
        Specified by:
        formatHTML in interface Formattable
        Returns:
        The formatted result
      • intoXML

        public final <H extends org.xml.sax.ContentHandler> H intoXML​(H handler)
                                                               throws org.xml.sax.SAXException
        Description copied from interface: Formattable
        Get this result as XML using a SAX ContentHandler.
        Specified by:
        intoXML in interface Formattable
        Parameters:
        handler - The custom content handler.
        Returns:
        The argument content handler is returned for convenience.
        Throws:
        org.xml.sax.SAXException
        See Also:
        Formattable.formatXML(), http://www.jooq.org/xsd/jooq-export-3.10.0.xsd