Maison > Article > base de données > Comment utiliser les contraintes de valeur par défaut de MySQL
Cet article présentera les contraintes par défaut, comment les utiliser et les effets après modification.
Cours recommandé : Tutoriel MySQL.
Contraintes communes de la base de données :
contrainte par défaut par défaut
non nulle : contrainte non nulle, précisez ; une certaine La colonne n'est pas NULL ;
unique : contrainte unique, spécifiant que les données d'une certaine colonne et de plusieurs combinaisons de colonnes ne peuvent pas être répétées
clé primaire : contrainte de clé primaire, spécifiant que ; les données d'une certaine colonne ne sont pas vides, uniques, ne peuvent pas être répétées ;
clé étrangère : clé étrangère, précise que l'enregistrement de la colonne appartient à un enregistrement de la table principale et fait référence à une autre donnée ; 🎜>
check : check, spécifie une expression pour la vérification Spécifier les données1 par défaut définit la valeur par défaut du. colonne
Lors de l'insertion d'une nouvelle ligne dans le tableau, aucune valeur explicite n'est attribuée à la colonne Si la valeur par défaut de la colonne est définie, la valeur par défaut sera obtenue automatiquement ; , ce sera (NULL).-- 创建一张user表 CREATE TABLE `test`.`user`( `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'id', `name` VARCHAR(225) COMMENT '姓名', `sex` TINYINT(1) DEFAULT 1 COMMENT '性别 1男 0女', PRIMARY KEY (`id`) ) ENGINE=INNODB CHARSET=utf8 COLLATE=utf8_general_ciAjouter des contraintes par défaut au champ :
1.在创建表时:直接在字段类型的后面加上 DEFAULT(value),具体看创建user表时的sex字段; 2.在存在表的情况下添加: 使用sql语句 ALTER TABLE `user` MODIFY `sex` TINYINT(1) DEFAULT 1; 即可为添加 `sex` 字段添加默认约束; 使用sql语句 ALTER TABLE `user` MODIFY `name` VARCHAR(225)DEFAULT '小明'; 即可为添加 `name` 字段添加默认约束; tips:默认约束是不可以使用函数的,所以 ALTER TABLE `user` ADD COLUMN `date` DATETIME DEFAULT NOW() AFTER `sex`; 是不可行的。Supprimer les contraintes par défaut :
移除默认约束和添加默认约束操作方式一样,都是修改表的字段; ALTER TABLE `user` MODIFY `sex` TINYINT(1); 这样就移除了sex的默认约束。Maintenant, nous insérons une donnée :
INSERT INTO `user`(`name`) VALUES('小明'); SELECT * FROM `user`; 结果: ----------------------------------- id name sex 小明 1 -----------------------------------
Bien sûr, nous pouvons aussi :
INSERT INTO `user`(`name`,`sex`) VALUES('小明',DEFAULT); SELECT * FROM `user`; 结果: --------------------------------- id name sex 小明 1 ---------------------------------Si vous faites cela :
INSERT INTO `user`(`sex`) VALUES(DEFAULT); SELECT * FROM `user`; 结果: ----------------------------------- id name sex (NULL) 1 -----------------------------------
-- 查询sex字段的默认值 SELECT DEFAULT(`sex`) FROM `user`; -- 更新sex为默认值 UPDATE `user` SET `sex` = DEFAULT WHERE `id`='1';
;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!