All Downloads are FREE. Search and download functionalities are using the official Maven repository.

tech.ydb.jooq.dsl.upsert.UpsertValuesStep16 Maven / Gradle / Ivy

The newest version!
package tech.ydb.jooq.dsl.upsert;

import java.util.Collection;
import java.util.function.Function;
import org.jooq.CheckReturnValue;
import org.jooq.Field;
import org.jooq.Record;
import org.jooq.Record16;
import org.jooq.Row16;
import org.jooq.Rows;
import org.jooq.Select;
import org.jooq.Table;
import tech.ydb.jooq.Upsert;
import tech.ydb.jooq.YdbDSLContext;

/**
 * This type is used for the {@link Upsert}'s DSL API.
 * 

* Example:


 * using(configuration)
 *       .upsertInto(table, field1, field2, field3, .., field15, field16)
 *       .values(valueA1, valueA2, valueA3, .., valueA15, valueA16)
 *       .values(valueB1, valueB2, valueB3, .., valueB15, valueB16)
 *       .execute();
 * 
*/ public interface UpsertValuesStep16 extends Upsert { /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep16 values(T1 value1, T2 value2, T3 value3, T4 value4, T5 value5, T6 value6, T7 value7, T8 value8, T9 value9, T10 value10, T11 value11, T12 value12, T13 value13, T14 value14, T15 value15, T16 value16); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep16 values(Field value1, Field value2, Field value3, Field value4, Field value5, Field value6, Field value7, Field value8, Field value9, Field value10, Field value11, Field value12, Field value13, Field value14, Field value15, Field value16); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep16 values(Collection values); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep16 values(Row16 values); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep16 values(Record16 values); /** * Add multiple rows of values to the upsert statement. *

* This is equivalent to calling the other values clauses multiple times, but * allows for dynamic construction of row arrays. * * @see Rows#toRowArray(Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function) */ @CheckReturnValue @SuppressWarnings("unchecked") UpsertValuesStep16 valuesOfRows(Row16... values); /** * Add multiple rows of values to the upsert statement. *

* This is equivalent to calling the other values clauses multiple times, but * allows for dynamic construction of row arrays. * * @see Rows#toRowList(Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function, Function) */ @CheckReturnValue UpsertValuesStep16 valuesOfRows(Collection> values); /** * Add multiple rows of values to the upsert statement. *

* This is equivalent to calling the other values clauses multiple times, but * allows for dynamic construction of row arrays. *

* Note: Irrespective of individual {@link Record#changed()} * flag values, all record values are copied to the VALUES clause * using {@link Record#intoArray()}, to match upsert columns by position, not * by name. If you prefer omitting unchanged values and adding values by field * name rather than by index, use {@link UpsertSetStep#set(Record...)} instead. * That syntax is available only if you omit the explicit upsert columns list. */ @CheckReturnValue @SuppressWarnings("unchecked") UpsertValuesStep16 valuesOfRecords(Record16... values); /** * Add multiple rows of values to the upsert statement. *

* This is equivalent to calling the other values clauses multiple times, but * allows for dynamic construction of row arrays. *

* Note: Irrespective of individual {@link Record#changed()} * flag values, all record values are copied to the VALUES clause * using {@link Record#intoArray()}, to match upsert columns by position, not * by name. If you prefer omitting unchanged values and adding values by field * name rather than by index, use {@link UpsertSetStep#set(Record...)} instead. * That syntax is available only if you omit the explicit upsert columns list. */ @CheckReturnValue UpsertValuesStep16 valuesOfRecords(Collection> values); /** * Use a SELECT statement as the source of values for the * UPSERT statement *

* This variant of the UPSERT … SELECT statement expects a * select returning exactly as many fields as specified previously in the * INTO clause: * {@link YdbDSLContext#upsertInto(Table, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field, Field)} */ @CheckReturnValue Upsert select(Select> select); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy