Dovresti usare il limitatore UNIQUE:

In MySQL, a UNIQUE index is one in which all values in the index must be distinct. An error occurs if you try to add a new row with a key that matches an existing row. The exception to this is that if a column in the index is allowed to contain NULL values, it can contain multiple NULL values. This exception does not apply to BDB tables, which allow only a single NULL.
http://dev.mysql.com/doc/mysql/en/CREATE_TABLE.html