Nein ;-) unique kannst du auf alle Felder anwenden. bedeutet nichts anderes, als das der Inhalt nicht noch einmal in der gleichen Spalte vorkommen darf.
Ok, sorry.
Was mir so sponntan einfällt ist "IS NOT", vielleicht prüfst du ob der Wert schon vorhanden ist.
Ist schon lage her das ich SQL gemacht habe.
Du prüfst ob ein Wert (in deinem Bsp. die 2) schon vorhanden ist, mit INSERT INTO table_name (a,b,c) VALUES (1,2,3) IS NOT IN (SELECT b FROM table_name);
Also so habe ich das noch in Erinnerung (Syntax zu 99,9% falsch), aber vielleicht hannst du davon was ableiten ...