t

slick.jdbc.JdbcActionComponent

SimpleInsertActionComposer

trait SimpleInsertActionComposer[U] extends JdbcProfile.InsertActionExtensionMethodsImpl[U]

Extension methods to generate the JDBC-specific insert actions.

Source
JdbcActionComponent.scala
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SimpleInsertActionComposer
  2. InsertActionExtensionMethodsImpl
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. abstract type MultiInsertResult

    The result type when inserting a collection of values.

    The result type when inserting a collection of values.

    Definition Classes
    InsertActionExtensionMethodsImpl
  2. abstract type SingleInsertOrUpdateResult

    The return type for insertOrUpdate operations.

    The return type for insertOrUpdate operations. Note that the Option return value will be None if it was an update and Some if it was an insert

  3. abstract type SingleInsertResult

    The result type when inserting a single value.

    The result type when inserting a single value.

    Definition Classes
    InsertActionExtensionMethodsImpl

Abstract Value Members

  1. abstract def +=(value: U): JdbcProfile.ProfileAction[SingleInsertResult, NoStream, Write]

    Insert a single row, skipping AutoInc columns.

    Insert a single row, skipping AutoInc columns.

    Definition Classes
    SimpleInsertActionComposerInsertActionExtensionMethodsImpl
  2. abstract def forceInsert(value: U): JdbcProfile.ProfileAction[SingleInsertResult, NoStream, Write]

    Insert a single row, including AutoInc columns.

    Insert a single row, including AutoInc columns. This is not supported by all database engines (see slick.jdbc.JdbcCapabilities.forceInsert).

  3. abstract def forceInsertAll(values: Iterable[U]): JdbcProfile.ProfileAction[MultiInsertResult, NoStream, Write]

    Insert multiple rows, including AutoInc columns.

    Insert multiple rows, including AutoInc columns. This is not supported by all database engines (see slick.jdbc.JdbcCapabilities.forceInsert). Uses JDBC's batch update feature if supported by the JDBC driver. Returns Some(rowsAffected), or None if the database returned no row count for some part of the batch. If any part of the batch fails, an exception is thrown.

  4. abstract def forceInsertStatement: String

    Get the SQL statement for a forced insert

  5. abstract def insertAll(values: Iterable[U], rowsPerStatement: JdbcProfile.RowsPerStatement = defaultRowsPerStatement): JdbcProfile.ProfileAction[MultiInsertResult, NoStream, Write]

    Insert multiple rows, skipping AutoInc columns.

    Insert multiple rows, skipping AutoInc columns.

    values

    the rows to insert

    rowsPerStatement

    RowsPerStatement.All to use a single statement to insert all rows at once, or RowsPerStatement.One to use a separate SQL statement for each row. Even so, if supported this will use JDBC's batching functionality.

    returns

    Some(rowsAffected), or None if the database returned no row count for some part of the batch. If any part of the batch fails, an exception is thrown.

  6. abstract def insertOrUpdate(value: U): JdbcProfile.ProfileAction[SingleInsertOrUpdateResult, NoStream, Write]

    Insert a single row if its primary key does not exist in the table, otherwise update the existing record.

    Insert a single row if its primary key does not exist in the table, otherwise update the existing record. Note that the return value will be None if an update was performed and Some if the operation was insert

  7. abstract def insertOrUpdateAll(values: Iterable[U], option: JdbcProfile.RowsPerStatement = defaultRowsPerStatement): JdbcProfile.ProfileAction[MultiInsertResult, NoStream, Write]

    Insert multiple rows if its primary key does not exist in the table, otherwise update the existing record.

    Insert multiple rows if its primary key does not exist in the table, otherwise update the existing record. Returns Some(rowsAffected), or None if the database returned no row count for some part of the batch. If any part of the batch fails, an exception is thrown. The option parameter specifies how the operation is to be performed.(default is RowsPerStatement.All) Note unlike insertOrUpdate, client-side emulation is not supported.

  8. abstract def insertStatement: String

    Get the SQL statement for a standard (soft) insert

Concrete Value Members

  1. final def ++=(values: Iterable[U]): JdbcProfile.ProfileAction[MultiInsertResult, NoStream, Write]

    Insert multiple rows, skipping AutoInc columns.

    Insert multiple rows, skipping AutoInc columns. Uses JDBC's batch update feature if supported by the JDBC driver. Returns Some(rowsAffected), or None if the database returned no row count for some part of the batch. If any part of the batch fails, an exception is thrown.

    This method is a shorthand for insertAll with RowsPerStatement.One.

    Definition Classes
    SimpleInsertActionComposerInsertActionExtensionMethodsImpl