Dexie.ConstraintError

Inheritance Hierarchy

  • Error

    • Dexie.DexieError

      • Dexie.ConstraintError

Description

A database operation was attempted that violates a constraint. For example, if you've defined a unique index "name" and put two objects in that table with the same name, the second put() will result in a constraint error

const db = new Dexie('mydb');
db.version(1).stores({
    foo: "id, &name"
});

async function main () {
    try {
        await db.foo.put({id: 1, name: "foo"}); // ok
        await db.foo.put({id: 2, name: "bar"}); // ok
        await db.foo.put({id: 3, name: "bar"}); // will fail with ConstraintError
    } catch (e) {
        assert (e.name === "ConstraintError");
    }
}

main();

Sample using Promise.catch()

Sample: switch(error.name)

Properties

name
Will always be Dexie.errnames.Constraint === "ConstraintError"

message

Detailed message

inner?

Inner exception instance (if any)

stack

Can be present if the error was thrown. If signaled, there wont be any call stack.