Not a bug. Unique(v1,v2) implies unique(v2,v1) which makes the second definition superflous
(1,2) is distinct from (2,1) (because tuples are ordered), no violation of unique. If you want to exclude equivalent sets, your check needs to be v1 < v2. -----Ursprüngliche Nachricht----- Von: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] Im Auftrag von Domingo Alvarez Duarte Gesendet: Dienstag, 23. Jänner 2018 17:36 An: SQLite mailing list <sqlite-users@mailinglists.sqlite.org> Betreff: [EXTERNAL] [sqlite] Bug in unique index Hello ! Maybe I found a bug in sqlite3 unique index, see example bellow: ====bug-unique.sql drop table if exists test; create table test( id integer primary key, v1 integer not null, v2 integer not null constraint not_equal check(v1 != v2), unique(v1, v2), unique(v2, v1) ); insert into test values(1, 1, 2); insert into test values(2, 2, 1); select * from test; ==== sqlite3 < bug-unique.sql ====output 1|1|2 2|2|1 ==== I was expecting to have an error trying to insert the second row but sqlite3 accepted the duplicated index without error. Cheers ! _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___________________________________________ Gunter Hick | Software Engineer | Scientific Games International GmbH | Klitschgasse 2-4, A-1130 Vienna | FN 157284 a, HG Wien, DVR: 0430013 | (O) +43 1 80100 - 0 May be privileged. May be confidential. Please delete if not the addressee. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users