insert
insert()
inserts a new record into a collection and returns the inserted record, if successful. For example:
const { txId, output } = await client.insert('employee', {
id: 'Fry',
name: 'Philip Fry',
});
The id
field in Triplit is a special field that is used to uniquely identify records and is required on entities. If you do not provide an id, one will be generated for you.
The insert
method may also be used to upsert an existing record when used in a schemaless database or in conjunction with optional attributes. For example:
const schema = {
employee: {
schema: S.Schema({
id: S.Id(),
name: S.String(),
title: S.Optional(S.String()),
year_hired: S.Optional(S.Number()),
}),
},
} satisfies ClientSchema;
await client.insert('employee', { id: 'Fry', name: 'Philip J. Fry' });
await client.insert('employee', {
id: 'Fry',
name: 'Philip J. Fry',
title: 'Pizza Delivery Boy',
});
await client.insert('employee', {
id: 'Fry',
name: 'Philip J. Fry',
title: 'Package Delivery Boy',
year_hired: 3000,
});
⚠️
When using insert
to upsert an existing record, any defaults on the schema
will be applied even if the record already exists.