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
- All
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( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- 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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
Documentation/API for the Molecule library - a meta DSL for the Datomic database.
Manual | scalamolecule.org | Github | Forum