sql >> Database >  >> RDS >> Mysql

MySQL unieke index door meerdere velden

U kunt dit doen met NULL waarden. Als u NULL gebruikt in plaats van "H ", MySQL negeert de rij bij het evalueren van de UNIQUE beperking :

A UNIQUE index creates a constraint such that all values in the index must be
distinct. An error occurs if you try to add a new row with a key value that
matches an existing row. This constraint does not apply to NULL values except
for the BDB storage engine. For other engines, a UNIQUE index permits multiple
NULL values for columns that can contain NULL.

Dit is een beetje vals spelen en het betekent dat u uw gegevens niet precies kunt hebben zoals u dat wilt. Dus deze oplossing past mogelijk niet bij uw behoeften. Maar als je kunt herwerk uw gegevens op deze manier, het zou moeten werken.




  1. MySQL Waar is de datum groter dan een maand?

  2. MySQL-trigger:kopieer de auto_increment-waarde naar een andere kolom bij het invoegen

  3. ExecuteScalar vs ExecuteNonQuery bij het retourneren van een identiteitswaarde

  4. SQLite RANDOM() zaaien