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

tech.ydb.jooq.dsl.upsert.UpsertValuesStep18 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.Record18;
import org.jooq.Row18;
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, .., field17, field18)
 *       .values(valueA1, valueA2, valueA3, .., valueA17, valueA18)
 *       .values(valueB1, valueB2, valueB3, .., valueB17, valueB18)
 *       .execute();
 * 
*/ public interface UpsertValuesStep18 extends Upsert { /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep18 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, T17 value17, T18 value18); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep18 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, Field value17, Field value18); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep18 values(Collection values); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep18 values(Row18 values); /** * Add a single row of values to the upsert statement. */ @CheckReturnValue UpsertValuesStep18 values(Record18 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, Function, Function) */ @CheckReturnValue @SuppressWarnings("unchecked") UpsertValuesStep18 valuesOfRows(Row18... 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, Function, Function) */ @CheckReturnValue UpsertValuesStep18 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") UpsertValuesStep18 valuesOfRecords(Record18... 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 UpsertValuesStep18 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, Field, Field)} */ @CheckReturnValue Upsert select(Select> select); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy