trait insert extends AnyRef
Insert one or more rows of data matching molecule.
Returns Future
with TxReport having info about
the result of the insert transaction.
Data matching the types of the molecule can be inserted either as individual args
or an Iterable (List, Set etc) of tuples:
// Insert single row of data with individual args Person.name.age.insert("Ann", 28) // Insert multiple rows of data. Accepts Iterable[Tpl] Person.name.age insert List( ("Ben", 42), ("Liz", 37) ) // Data was inserted Person.name.age.get.sorted === List( ("Ann", 28), ("Ben", 42), ("Liz", 37) )
Each insert apply method returns a TxReport with info about the result of the transaction.
Since insert
is an object of each arity 1-22 Molecule implementation, we can make an "insert-molecule" at compile time
that we can re-use for inserting data at runtime matching the molecule type:
// At compiletime: // Make insert-molecule val insertPersonsWithAge = Person.name.age.insert // At runtime: // Apply individual args matching insert-molecule to insert single row insertPersonsWithAge("Ann", 28) // .. or apply Iterable of tuples matching insert-molecule to insert multiple rows insertPersonsWithAge( List( ("Ben", 42), ("Liz", 37) ) ) // Data was inserted Person.name.age.get.sorted === List( ("Ann", 28), ("Ben", 42), ("Liz", 37) )
The insert operation is synchronous and blocking. Use insertAsync
for non-blocking asynchronous inserts.
- Source
- Molecule.scala
- Alphabetic
- By Inheritance
- insert
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Documentation/API for the Molecule library - a meta DSL for the Datomic database.
Manual | scalamolecule.org | Github | Forum