Hi!
I would like to propose an enhancement to SQLite diagnostics in case of unique constraint failure. Currently the message does not contain the name of constraint in question, only columns. For example: sqlite> CREATE TABLE c_test (c0 INTEGER, c1 INTEGER, c2 INTEGER, CONSTRAINT U_X1 UNIQUE(c0, c2), CONSTRAINT U_X2 UNIQUE(c1, c2) ); sqlite> INSERT INTO c_test VALUES (1, 1, 1); sqlite> INSERT INTO c_test VALUES (2, 1, 1); Error: UNIQUE constraint failed: c_test.c1, c_test.c2 sqlite> INSERT INTO c_test VALUES (1, 2, 1); Error: UNIQUE constraint failed: c_test.c0, c_test.c2 It is much more convenient in CHECK constraints: CREATE TABLE test (id INTEGER, CONSTRAINT U_X UNIQUE(id), CONSTRAINT C_X CHECK (id < 5)); sqlite> INSERT INTO test VALUES (7); Error: CHECK constraint failed: C_X The CHECK constraint name is included in the message and can easiliy be extracted. It seems to me that adding similar behavior to unique constraints will be beneficial, and, looking into the source code, not hard to implement. Vasiliy _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users