I have two fields...both are not unique, but both can't be the same.

So two fields:

user | fruit |
joe11 apple
angel bananna
bobby apple
jeff orange
julie orange
angel apple
angel orange
So lets say the above was my table, notice how both fields are not unique. You notice Angel appears 3 times and has a different fruit for each one.

So now I have this HTML form where you can select the user's name in a pulldown box and the type of fruit also in a pulldown box. So lets say if the end user selects Angel in the user's pulldown, and Apple for the fruit pulldown. The end user then clicks submit form and now I need a way to not allow this duplicate, since the combo Angel and Apple already exists.

Is there some sort of INSERT INTO statement where it inserts 2 values if and only those 2 values dont already exist.???


11 Years
Discussion Span
Last Post by pritaeas

make the two fields unique in combination. it is probably possible in MySQL but this is how to do it in PostgreSQL. If the syntax is different in MySQL you'll have to check the docs

ALTER TABLE navigation_nodes
  ADD CONSTRAINT unq_controller_action_names UNIQUE(controller_name, action_name);
--COMMENT ON CONSTRAINT unq_controller_action_names ON 
--navigation_nodes IS 'make sure same node is not duplicated';
This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.