Search code examples
mysqlinsertduplication

INSERT with ignore on duplicate but no Key


I have field that it's not a key (it's text) and I want to insert row into table but only if there is no such field.

Is the way to do this on one query without need to call select first to check if there is row with this filed in table?


Solution

  • two variants:

    1. You can add unique key to the TEXT field, you only should specify key length for the index.
    2. Create a BEFORE INSERT trigger, but in this case you have to call SELECT statement in the trigger.