Rechercher dans le manuel MySQL
1.8.3.4 ENUM and SET Constraints
ENUM
and
SET
columns provide an
efficient way to define columns that can contain only a given
set of values. See Section 11.4.4, “The ENUM Type”, and
Section 11.4.5, “The SET Type”.
With strict mode enabled (see Section 5.1.11, “Server SQL Modes”), the
definition of a ENUM
or
SET
column acts as a constraint
on values entered into the column. An error occurs for values
that do not satisfy these conditions:
An
ENUM
value must be one of those listed in the column definition, or the internal numeric equivalent thereof. The value cannot be the error value (that is, 0 or the empty string). For a column defined asENUM('a','b','c')
, values such as''
,'d'
, or'ax'
are invalid and are rejected.A
SET
value must be the empty string or a value consisting only of the values listed in the column definition separated by commas. For a column defined asSET('a','b','c')
, values such as'd'
or'a,b,c,d'
are invalid and are rejected.
Errors for invalid values can be suppressed in strict mode if
you use INSERT
IGNORE
or UPDATE IGNORE
. In this
case, a warning is generated rather than an error. For
ENUM
, the value is inserted as
the error member (0
). For
SET
, the value is inserted as
given except that any invalid substrings are deleted. For
example, 'a,x,b,y'
results in a value of
'a,b'
.
Traduction non disponible
Le manuel MySQL n'est pas encore traduit en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.
Document créé le 26/06/2006, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/mysql-rf-constraint-enum.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.