Je souhaite explicitement fixer une limite au nombre de chiffres pouvant être insérés dans le champ "pk_flat_id"
pas votre définition de table actuelle imposer une "limite de taille" de quelque manière que ce soit. Dans MySQL, le paramètre pour le int
le type de données n'est qu'un indice pour les applications sur la largeur d'affichage de la colonne lors de l'affichage ce.
Vous pouvez stocker la valeur 2147483647 dans un int(1)
sans aucun problème.
Si vous souhaitez limiter les valeurs à stocker dans une colonne d'entiers, vous pouvez utiliser une contrainte de vérification :
CREATE TABLE flat_10
(
pk_flat_id bigint DEFAULT 1,
rooms integer NOT NULL,
room_label CHAR(1) NOT NULL,
PRIMARY KEY (flat_id),
constraint valid_number
check (pk_flat_id <= 999999999)
);